shell 知識點備忘

2021-07-26 22:37:03 字數 1707 閱讀 3507

與檔案存在與否的判斷

-e 是否存在

-f 是否為普通檔案

-d 是否為目錄

-s 是否為空的檔案

-p 是否為管道檔案

-b 是否為塊裝置檔案

-c 是否為字元裝置檔案

-l 是否為軟鏈結

-s 是否socket檔案

與檔案許可權有關的判斷

-r 是否有可讀的許可權

-w 是否有可寫的許可權

-x 是否有可執行許可權

-u 是否有特權位

-g 是否有組特權位

-k 是否有t位,即貼上位

兩個檔案的比較判斷

-nt 比較file1比file2新

-ot 比較file1比file2舊

-ef 比較file1和file2是否為同乙個檔案,

一般用於判斷硬鏈結

整數之間的大小判斷

-eq 相等

-ne 不等於

-gt 大於

-ge 大於等於

-lt 小於

-le 小於等於

字串之間的判斷

-z 是否為空字串

-n 是否為非空字串

str1 = str2 是否相等

str1 != str2 是否不等

多重條件判斷

-a 兩個條件同時滿足,就為真,相當於and

-o 兩個條件滿足其一,就為真,相當於or

如果使用 [[ ]], 則多重判斷可以使用:

[[ *** && *** || *** ]] 的形式.

特殊變數列表

變數含義$0

當前指令碼的檔名

$n傳遞給指令碼或函式的引數。n

是乙個數字,表示第幾個引數。例如,第乙個引數是$1,第二個引數是$2。

$#傳遞給指令碼或函式的引數個數。

$*傳遞給指令碼或函式的所有引數。

$@傳遞給指令碼或函式的所有引數。被雙引號(" ")包含時,與 $* 稍有不同,下面將會講到。

$?上個命令的退出狀態,或函式的返回值。

$$當前shell程序id。對於

shell 指令碼,就是這些指令碼所在的程序id。

知識點備忘 String

substring 方法用於提取字串中介於兩個指定下標之間的字元 substring start,end 開始和結束的位置,從零開始的索引 引數 描述 start 必需。乙個非負的整數,規定要提取的子串的第乙個字元在 stringobject 中的位置。stop 可選。乙個非負的整數,比要提取的子串...

C 知識點備忘

關鍵字 explicit不允許隱式的轉化 參考 例如 class string下面兩種寫法編譯通過,是正常的初始化方式 string s2 10 ok 分配10個位元組的空字串 string s3 string 10 ok 分配10個位元組的空字串以下宣告方式為隱式的宣告方式 string s4 1...

c細節知識點備忘

32位計算機中各型別取值範圍 變數型別 關鍵字位元組 取值範圍 字元型char 10 256 短整型short 2 32768 32768 無符號短整型 unsigned short 20 65535 整形int 4 21e 21e 無符號整形 unsigned int 40 42e 長整形long...