給你個全的,你在linux環境下多試下就明白了:file=/dir1/dir2/dir3/my.file.txt$0 這個程式的執行名字
$n 這個程式的第n個引數值,n=1..9
$* 這個程式的所有引數,此選項引數可超過9個。
$# 這個程式的引數個數
$$ 這個程式的pid(指令碼執行的當前程序id號)
$! 執行上乙個背景指令的pid(後台執行的最後乙個程序的程序id號)
$? 執行上乙個指令的返回值 (顯示最後命令的退出狀態。0表示沒有錯誤,其他任何值表明有錯誤)
$- 顯示shell使用的當前選項,與set命令功能相同
$@ 跟$*類似,但是可以當作陣列用
另外,字串的刪除擷取操作如下:
可以用$分別替換得到不同的值:
$:刪掉第乙個 / 及其左邊的字串:dir1/dir2/dir3/my.file.txt
$:刪掉最後乙個 / 及其左邊的字串:my.file.txt
$:刪掉第乙個 . 及其左邊的字串:file.txt
$:刪掉最後乙個 . 及其左邊的字串:txt
$:刪掉最後乙個 / 及其右邊的字串:/dir1/dir2/dir3
$:刪掉第乙個 / 及其右邊的字串:(空值)
$:刪掉最後乙個 . 及其右邊的字串:/dir1/dir2/dir3/my.file
$:刪掉第乙個 . 及其右邊的字串:/dir1/dir2/dir3/m
一些shell符號
傳遞到指令碼的引數個數 以乙個單字串顯示所有向指令碼傳遞的引數,與位置變數不同,此選項引數可超過9個 指令碼執行的當前程序id號 後台執行的最後乙個程序的程序id號 與 相同,但是使用時加引號,並在引號中返回每個引數 顯示shell使用的當前選項,與set命令功能相同 顯示最後命令的退出狀態。0表示...
shell的一些符號
string string command 輸入輸出重導向 2 2 2 井號 comments 這幾乎是個滿場都有的符號。bin bash 井號也常出現在一行的開頭,或者位於完整指令之後,這類情況表示符號後面的是註解文字,不會被執行。this line is comments.echo a a a ...
shell下的一些符號問題
今天編寫了乙個測試程式 執行在linux環境下 其中要將一些命令字串預先儲存在乙個檔案中,然後測試程式從檔案中讀取這些命令串。這些命令串中,欄位與字段之間是用 t 分隔符分開,每個命令串的結束,還要用 r n 結尾。開始時,我只是簡單的將這樣的命令串,比如 305 t00 14 22 9c 22 9...