shell腳本基本命令,【Linux】shell命令總結

 2023-12-09 阅读 21 评论 0

摘要:點擊上方,選擇星標或置頂,每天給你送干貨!閱讀大概需要11分鐘跟隨小博主,每天進步一丟丟來自:良許Linux01shell腳本基本命令、前言Linux shell命令應該算是非常入門的東西,但是實際上在使用的時候,會遇到各種各樣的問題&#x

點擊上方,選擇星標置頂,每天給你送干貨

閱讀大概需要11分鐘

跟隨小博主,每天進步一丟丟

來自:良許Linux

01

shell腳本基本命令、前言

Linux shell命令應該算是非常入門的東西,但是實際上在使用的時候,會遇到各種各樣的問題,前幾天我在我們的項目上需要做一個功能,根據進程名字殺死這個進程,下面是過程

1、我們正常需要的操作是

python執行shell命令、?$ps |grep xxx

?$kill -9 xx

2、kill命令是常用的,但是用killall命令會更快

linux中shell是什么意思?$killall -9 xxx

3、令我困擾的是我用的那個沒有killall然后我做了下面的操作

? ? ? ?$adb shell ps |grep speech |awk '{print $2}' > 1.txt

Linux bash,? ? ? ?$cat 1.txt |xargs -n1 adb shell kill -9

? ? ? ?我用這個的原因是用一條指令重定向總是各種問題,正常情況下用這條就可以了

? ? ? $adb shell ps |grep speech |awk '{print $2}'|xargs -n1 kill -9

grep命令?02

正文

關機/重啟

關機(必須用root用戶)
shutdown?-h?now??##?立刻關機
shutdown?-h?+10??##??10分鐘以后關機
shutdown?-h?12:00:00??##12點整的時候關機
halt???#??等于立刻關機重啟
shutdown?-r?now
reboot???#?等于立刻重啟

Linux shell?echo

root@ubuntu:~#?a="hello,world"
root@ubuntu:~#?echo?a
a
root@ubuntu:~#?echo?&a
[1]?3091a:?command?not?found
[1]+??Done????????????????????echo
root@ubuntu:~#?echo?$a
hello,world
root@ubuntu:~#?

vim文本編輯器

最基本用法
vi??somefile.4
1?首先會進入“一般模式”,此模式只接受各種快捷鍵,不能編輯文件內容
2?按i鍵,就會從一般模式進入編輯模式,此模式下,敲入的都是文件內容
3?編輯完成之后,按Esc鍵退出編輯模式,回到一般模式;
4?再按:,進入“底行命令模式”,輸入wq命令,回車即可常用快捷鍵
一些有用的快捷鍵(在一般模式下使用):
a???在光標后一位開始插入
A???在該行的最后插入
I???在該行的最前面插入
gg???直接跳到文件的首行
G????直接跳到文件的末行
dd????刪除一行
3dd???刪除3行
yy????復制一行
3yy???復制3行
p?????粘貼
u?????undo
v????????進入字符選擇模式,選擇完成后,按y復制,按p粘貼
ctrl+v???進入塊選擇模式,選擇完成后,按y復制,按p粘貼
shift+v??進入行選擇模式,選擇完成后,按y復制,按p粘貼查找并替換
1?顯示行號
:set?nu
2?隱藏行號
:set?nonu
3?查找關鍵字
:/you???????##?效果:查找文件中出現的you,并定位到第一個找到的地方,按n可以定位到下一個匹配位置(按N定位到上一個)
4?替換操作
:s/sad/bbb????查找光標所在行的第一個sad,替換為bbb
:%s/sad/bbb??????查找文件中所有sad,替換為bbb

拷貝/刪除/移動/更換文件名字

cp??somefile.1???/home/hadoop/
rm?/home/hadoop/somefile.1
rm?-f?/home/hadoop/somefile.1
mv?/home/hadoop/somefile.1?../
mv?a.txt?b.txt?//把a.txt更名為b.txt

打包壓縮

1、gzip壓縮
gzip?a.txt2、解壓
gunzip?a.txt.gz
gzip?-d?a.txt.gz3、bzip2壓縮
bzip2?a4、解壓
bunzip2?a.bz2
bzip2?-d?a.bz25、打包:將指定文件或文件夾
tar?-cvf?bak.tar??./aaa
將/etc/password追加文件到bak.tar中
tar?-rvf?bak.tar?/etc/password6、解壓
tar?-xvf?bak.tar7、打包并壓縮
tar?-zcvf?a.tar.gz??aaa/8、解包并解壓縮(重要的事情說三遍!!!)
tar??-zxvf??a.tar.gz
解壓到/usr/下
tar??-zxvf??a.tar.gz??-C??/usr9、查看壓縮包內容
tar?-ztvf?a.tar.gz
zip/unzip10、打包并壓縮成bz2
tar?-jcvf?a.tar.bz211、解壓bz2
tar?-jxvf?a.tar.bz2

常用查找命令的使用

1、查找可執行的命令所在的路徑:
which?ls2、查找可執行的命令和幫助的位置:
whereis?ls3、從某個文件夾開始查找文件
find?/?-name?"hadooop*"
find?/?-name?"hadooop*"?-ls4、查找并刪除
find?/?-name?"hadooop*"?-ok?rm?{}?\;
find?/?-name?"hadooop*"?-exec?rm?{}?\;5、查找用戶為hadoop的文件
find??/usr??-user??hadoop??-ls6、查找用戶為hadoop的文件夾
find?/home?-user?hadoop?-type?d?-ls7、查找權限為777的文件
find?/?-perm?-777?-type?d?-ls8、在指定目錄不分大小寫查找某個文件
find?./sound/?-iname?ft56Q.c?9、顯示命令歷史
history

grep命令

最常用的-全字匹配
grep?-wrn??weiqifa?./sound/查找?某個字符串但是不在指定文件夾查找
grep?-E?"http"??./?-R?--exclude-dir=./sound/?
grep?-E?"http"??.?-R?--exclude-dir={.git,res,bin}
排除擴展名為?java?和?js?的文件
grep?-E?"http"??.?-R?--exclude=*.{java,js}1?基本使用
查詢包含hadoop的行
grep?hadoop?/etc/password
grep?aaa??./*.txt?2?cut截取以:分割保留第七段
root@ubuntu:~/kernel_rk3399_yan4_dev/kernel#?grep?dsl?/etc/passwd?|?cut?-d:?-f7
/bin/bash
root@ubuntu:~/kernel_rk3399_yan4_dev/kernel#?grep?dsl?/etc/passwd?
dsl:x:1000:1000:dsl,,,:/home/dsl:/bin/bash
root@ubuntu:~/kernel_rk3399_yan4_dev/kernel#?3?查詢不包含hadoop的行
grep?-v?hadoop?/etc/passwd4?正則表達包含hadoop
grep?'hadoop'?/etc/passwd5?正則表達(點代表任意一個字符)
grep?'h.*p'?/etc/passwd6?正則表達以hadoop開頭
grep?'^hadoop'?/etc/passwd7?正則表達以hadoop結尾
grep?'hadoop$'?/etc/passwd規則:
.??:?任意一個字符
a*?:?任意多個a(零個或多個a)
a??:?零個或一個a
a+?:?一個或多個a
.*?:?任意多個任意字符
\.?:?轉義.
o\{2\}?:?o重復兩次查找不是以#開頭的行
grep?-v?'^#'?a.txt?|?grep?-v?'^$'?以h或r開頭的
grep?'^[hr]'?/etc/passwd不是以h和r開頭的
grep?'^[^hr]'?/etc/passwd不是以h到r開頭的
grep?'^[^h-r]'?/etc/passwd

linux文件權限的描述格式解讀

drwxr-xr-x??????(也可以用二進制表示??111?101?101??-->??755)d:標識節點類型(d:文件夾???-:文件? l:鏈接)
r:可讀?? w:可寫??? x:可執行?
第一組rwx:??##?表示這個文件的擁有者對它的權限:可讀可寫可執行
第二組r-x:??##?表示這個文件的所屬組用戶對它的權限:可讀,不可寫,可執行
第三組r-x:??##?表示這個文件的其他用戶(相對于上面兩類用戶)對它的權限:可讀,不可寫,可執行

修改文件權限

chmod?g-rw?haha.dat?????????##?表示將haha.dat對所屬組的rw權限取消
chmod?o-rw?haha.dat?????????##?表示將haha.dat對其他人的rw權限取消
chmod?u+x?haha.dat?????????##?表示將haha.dat對所屬用戶的權限增加x
chmod?a-x?haha.dat???????????????##?表示將haha.dat對所用戶取消x權限也可以用數字的方式來修改權限
chmod?664?haha.dat???
就會修改成???rw-rw-r--
如果要將一個文件夾的所有內容權限統一修改,則可以-R參數
chmod?-R?770?aaa/

修改文件所有權

<只有root權限能執行>
chown?angela??aaa????????##?改變所屬用戶
chown?:angela??aaa????????##?改變所屬組
chown?angela:angela?aaa/????##?同時修改所屬用戶和所屬組

統計文件或文件夾的大小

root@ubuntu:~/kernel_rk3399_yan4_dev/kernel#?du?-sh?sound/
33M????sound/
root@ubuntu:~/kernel_rk3399_yan4_dev/kernel#?df?-h????查看磁盤的空間
root@ubuntu:~/kernel_rk3399_yan4_dev/kernel#?df?-h
Filesystem??????Size??Used?Avail?Use%?Mounted?on
udev????????????1.9G?????0??1.9G???0%?/dev
tmpfs???????????394M??6.4M??388M???2%?/run
/dev/sda1???????294G???93G??186G??34%?/
tmpfs???????????2.0G??204K??2.0G???1%?/dev/shm
tmpfs???????????5.0M??4.0K??5.0M???1%?/run/lock
tmpfs???????????2.0G?????0??2.0G???0%?/sys/fs/cgroup
tmpfs???????????394M???80K??394M???1%?/run/user/1000
root@ubuntu:~/kernel_rk3399_yan4_dev/kernel#?

---END---


方便交流學習,備注:昵稱-學校(公司)-方向,進入DL&NLP交流群。

方向有很多:機器學習、深度學習,python,情感分析、意見挖掘、句法分析、機器翻譯、人機對話、知識圖譜、語音識別等。

記得備注呦

推薦閱讀:

【ACL 2019】騰訊AI Lab解讀三大前沿方向及20篇入選論文

【一分鐘論文】IJCAI2019 | Self-attentive Biaf?ne Dependency? Parsing

【一分鐘論文】 NAACL2019-使用感知句法詞表示的句法增強神經機器翻譯

【一分鐘論文】Semi-supervised Sequence Learning半監督序列學習

【一分鐘論文】Deep Biaffine Attention for Neural Dependency Parsing

詳解Transition-based Dependency parser基于轉移的依存句法解析器

經驗 | 初入NLP領域的一些小建議

學術 | 如何寫一篇合格的NLP論文

干貨?|?那些高產的學者都是怎樣工作的?

一個簡單有效的聯合模型

近年來NLP在法律領域的相關研究工作


讓更多的人知道你“在看”

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/2/193430.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息