Linux Shell 常用技巧

2021-07-03 12:24:38 字數 2361 閱讀 9087

一、  單引號、雙引號、反引號

反引號位 (`) 位於鍵盤的tab鍵的上方、1鍵的左方。注意與單引號(')位於enter鍵的左方的區別。

在linux中起著命令替換的作用。命令替換是指shell能夠將乙個命令的標準輸出插在乙個命令列中任何位置。

如下,shell會執行反引號中的date命令,把結果插入到echo命令顯示的內容中。

[root@localhost sh]# echo the date is `date`

the date is 2023年 03月 14日 星期一 21:15:43 cst

單引號、雙引號用於使用者把帶有空格的字串賦值給變數事的分界符。

[root@localhost sh]# str="today is monday"

[root@localhost sh]# echo $str

today is monday

如果沒有單引號或雙引號,shell會把空格後的字串解釋為命令。

[root@localhost sh]# str=today is monday

bash: is: command not found

單引號和雙引號的區別。單引號告訴shell忽略所有特殊字元,而雙引號忽略大多數,但不包括$、\、`。

[root@localhost sh]# testvalue=100

[root@localhost sh]# echo 'the testvalue is $testvalue'

the testvalue is $testvalue

[root@localhost sh]# echo "the testvalue is $testvalue"

the testvalue is 100

二、 變數 $#,$?,$@,$0,$1,$2 含**釋

$$ shell本身的pid(processid)

$! shell最後執行的後台process的pid

$? 最後執行的命令的結束**(返回值)

$- 使用set命令設定的flag一覽

$* 所有引數列表。如"$*"用「"」括起來的情況、以"$1 $2 … $n"的形式輸出所有引數。

$@ 所有引數列表。如"$@"用「"」括起來的情況、以"$1" "$2" … "$n" 的形式輸出所有引數。

$# 新增到shell的引數個數

$0 shell本身的檔名

$1~$n 

新增到shell的各引數值。$1是第1引數、$2是第2引數

三、 條件判斷

1. 字串判斷

str1 = str2      當兩個串有相同內容、長度時為真

str1 != str2      當串str1和str2不等時為真 

-n str1        當串的長度大於0時為真(串非空) 

-z str1        當串的長度為0時為真(空串) 

2. 數字的判斷

int1 -eq int2    兩數相等為真 

int1 -ne int2    兩數不等為真 

int1 -gt int2    int1大於int2為真 

int1 -ge int2    int1大於等於int2為真 

int1 -lt int2    int1小於int2為真 

int1 -le int2    int1小於等於int2為真 

3. 檔案判斷

-s file      檔案大小非0時為真

-f "somefile"    判斷是否是乙個檔案

-x "/bin/ls"     判斷/bin/ls是否存在並有可執行許可權

-n "$var"       判斷$var變數是否有值

[ "$a" = "$b" ]   判斷$a和$b是否相等          

-r file      使用者可讀為真

-w file       使用者可寫為真

-x file      使用者可執行為真

-f file      檔案為正規檔案為真

-d file      檔案為目錄為真

-c file      檔案為字元特殊檔案為真

-b file      檔案為塊特殊檔案為真

-s file      檔案大小非0時為真

-t file      當檔案描述符(預設為1)指定的裝置為終端時為真

Linux Shell常用技巧

linux shell常用技巧 一 一.特殊檔案 dev null和 dev tty 二.簡單的命令跟蹤 三.正規表示式基本語法描述 四.使用cut命令選定字段 五.計算行數 字數以及字元數 六.提取開頭或結尾數行 linux shell常用技巧 二 七.grep家族 linux shell常用技巧...

Linux Shell常用技巧

一遍很不錯的shell文章,收藏一下 watch d n 1 df h ls l d變化高亮,n n秒執行一次 free k s 1.5 以千位元組 kb 為單位顯示資料,同時每隔1.5重新整理輸出一次 pidstat p 1 2 3 tr 監控pid為1 init 的程序及其內部執行緒的記憶體 r...

Linux Shell常用技巧 十

二十.通過管道組合shell命令獲取系統執行資料 1.輸出當前系統中占用記憶體最多的5條命令 1 通過ps命令列出當前主機正在執行的所有程序。2 按照第五個字段基於數值的形式進行正常排序 由小到大 3 僅顯示最後5條輸出。ps aux sort k 5n tail 5 stephen 1861 0....