必備shell命令

2021-08-04 16:32:00 字數 3110 閱讀 1766

[toc]

在編譯的時候,常用的比較長的命令或者路徑,可以用變數代替,例如l=『***/***/***』,使用的時候可以$l

開啟檔案或者目錄、**等等。

xdg-open [file | url]

列印、顯示字串;

echo $path;

給命令去綽號:alias c=」clean」

永久有效:vim ~/.bashrc 寫到末尾去。

1,作用:在指定的範圍內按某種方式查詢檔案

2,用法:

find /etc -name 「*.conf」 (在/etc/下,查詢所有名字字尾為.conf的檔案)

find /etc -type d (將/etc/下的所有目錄找出來)

1,作用:顯示檔案的頭/尾幾行

2,用法:

head -n 20 a.txt (檢視檔案a.txt的開頭20行)

tail -n 20 a.txt (檢視檔案a.txt的末尾20行)

1,作用:排序

2,用法:

sort a.txt

1,作用:去掉相鄰的重複行

2,用法:

uniq a.txt

1,作用:對比兩個檔案/目錄,並產生他們的差異的資訊(補丁)

2,用法:

diff a.txt b.txt -u > patch (用標準格式,比對a.txt和b.txt,並產生補丁檔案patch)

diff proj_1.0/ proj_2.0/ -urnb > 1.0.patch (用標準格式,遞迴地比對兩個目錄下的所有檔案,並產生補丁檔案1.0.patch)

1,作用:為某檔案/某工程目錄打補丁

2,用法:

patch -p0 < patch (將本層目錄下的補丁加入當前目錄的相關檔案中)

patch -p1 < ../patch (將上一級目錄下的補丁加入當前目錄的相關檔案中)

patch -p2 < ../../patch (將上上級目錄下的補丁加入當前目錄的相關檔案中)

選項:-c 建立歸檔檔案;-x 釋放歸檔檔案;-t檢視歸檔檔案-f 指定檔名稱; -v顯示命令過程;-c 指定解壓目錄;

解壓:tar xzf ***.tar.gz

tar xzf ***.tar.gz -c /tmp

壓縮:tar czf ***.tar.gz ***.txt a.txt ///壓縮成gz格式,bzip2格式把z改為j

檢視壓縮包:tar tf ***.tar.gz

對於zip檔案

這條命令是將所有.jpg的檔案壓縮成乙個zip包

這條命令是將all.zip中的所有檔案解壓出來

*****====

./while & 。讓程式後台執行

重定向:xx>file 將file檔案重定向為輸出源。例如wc>file.txt,將wc的結果重定向輸出到txt檔案中;

新增使用者:sudo adduser username;

刪除使用者:sudo deluser username –remove-home;

建立使用者組:sudo addgroup groupname

新增使用者入組:sudo gpasswd groupname -a username

刪除:sudo gpasswd groupname -d username

1,作用:檢視當前瞬間,系統的程序情況

2,用法:

ps -ef

ps -aux

ps -ajx

以樹狀顯示所有的程序資訊。

1,作用:跟蹤系統的程序情況

2,用法:

top

top -p pid

1,作用:跟指定的程序傳送乙個訊號

2,用法:

kill -l (列出當前系統支援的所有訊號)

kill -s sig*** pid (給程序號為pid的程序傳送sig***)

kill -n pid (給程序號為pid的程序傳送第n號訊號)

killall *** (給所有叫***的程序傳送sigterm)

1,作用:檢視當前系統已經掛載了的檔案系統(含虛擬檔案系統)的詳細資訊

2,用法:

df (檢視當前系統預設顯示的檔案系統資訊)

df -a (檢視所有的檔案系統資訊)

df -h (以k/m/g方式顯示檔案體系的儲存空間的大小)

1,作用:掛載/解除安裝乙個分割槽

2,用法:

sudo mount /dev/*** /somewhere (將分割槽/dev/***(一般是u盤、sd卡)掛載到某目錄/somewhere下)

sudo mount x.x.x.x:/*** /somewhere -t nfs -o nolock (將遠端共享分割槽掛載到某目錄/somewhere下)

sudo mount ***.iso /somewhere -t ios9660 -o loop (將虛擬光碟掛載到某目錄/somewhere下)

以下兩種方式是等價的:·

sudo umount /somewhere (將掛載在/somewhere下的分割槽解除安裝掉)

sudo umount /dev/*** (將分割槽/dev/***解除安裝掉)

檢視當前系統已經識別(但可能還未掛載)的分割槽

sudo fdisk -l

1,作用:為檔案/目錄建立鏈結

2,用法:

ln file1 file2 -s (建立乙個指向file1的「軟連線」檔案file2)

ln dir1/ dir2/ -s (建立乙個指向dir1/的「軟連線」檔案dir2/)

1 作用:查詢命令、程式所在目錄

which ls

目錄:(不是資料夾!)是乙個地方(硬碟分割槽、網路分割槽、記憶體區域)的入口

1,星號 * :代表任意長度的任意字元

2,問號 ? :代表乙個任意字元

3,擴號 […]:代表乙個指定範圍的字元

[^…]:代表乙個指定範圍之外的字元

1,雙引號:在雙引號裡面可以通過 $ 來解析變數,通過反引號來解析命令

2,單引號:在單引號裡面的所有字元,都將被一律視為字串

3,反引號:可以解析乙個命令

shell必備知識

一 在shell中經常需要測試一些變數的狀態,以下是部分測試條件 comparisons eqequal to nenot equal to ltless than leless than or equal to gtgreater than gegreater than or equal to f...

shell必備基礎知識

shell指令碼 規範的shell指令碼的一般組成。環境宣告 重定向出輸出 只收集前面命令的正確輸出 重定向輸入 覆蓋 追加 2 只收集前面命令的錯誤輸出 收集前面命令的錯誤與正確的輸出 2 將錯誤的變成正確的輸出 2 將正確的變為錯誤的輸出 dev null 黑洞路徑變數 以不變的名稱存放的可能會...

git必備命令

git status 檢視git的狀態 git add 的形式把我們新增到索引庫中,可以是檔案也可以是目錄。git add u 把中所有tracked檔案中被修改過或已刪除檔案的資訊新增到索引庫。它不會處理untracted的檔案。git commit m 說明 將暫存區的檔案新增到本地倉庫 git...