$# 是傳給指令碼的引數個數$0是指令碼本身的名字$1
是傳遞給該shell指令碼的第乙個引數$2
是傳遞給該shell指令碼的第二個引數
$@ 是傳給指令碼的所有引數的列表
$*是以乙個單字串顯示所有向指令碼傳遞的引數,與位置變數不同,引數可超過9個
$$ 是指令碼執行的當前程序id號
$? 是顯示最後命令的退出狀態,0表示沒有錯誤,其他表示有錯誤
其中,,$@和$*都表示命令行所有引數(不包含$0),但是$*將命令列的所有引數看成乙個整體,而$@則區分各個引數
見下例:
#!/bin/bashecho
"number:$#
"echo
"name:$0
"echo
"first:$1
"echo
"second:$2
"echo
"list:$@
"echo
"param list:$*
"echo
"pid:$$
"echo
"exit status:$?
"for i in"$@
"doecho
$idone
for i in"$*
"doecho
$idone
輸出如下:
number:6name:./param.sh
first:
1second:
2list:12
3456
param list:12
3456
pid:
31600
exit status:01
2345
6123
456
ifcfg eth0檔案中引數設定的含義
今天又安裝了一台虛擬機器,設定網路時,還是有問題。ping主機可以通,外網也通,但是ping主機所在的內網不通 真是傷不起啊。後來把原來虛擬機器的配置檔案拷貝過來,修改了ip以後,就沒問題了。其實兩個檔案就差乙個 userctl吧。ifcfg eth0在 etc sysconfig network ...
Shell指令碼中 0, , 等含義
shell本身的pid processid shell最後執行的後台process的pid 最後執行的命令的結束 返回值 使用set命令設定的flag一覽 所有引數列表。如 用 括起來的情況 以 1 2 n 的形式輸出所有引數。所有引數列表。如 用 括起來的情況 以 1 2 n 的形式輸出所有引數。...
Oracle中的to date引數含義
日期格式引數含義說明 d 一周中的星期幾 day 天的名字,使用空格填充到9個字元 dd 月中的第幾天 ddd 年中的第幾天 dy 天的簡寫名 iw iso標準的年中的第幾周 iyyy iso標準的四位年份 yyyy 四位年份 yyy,yy,y 年份的最後三位,兩位,一位 hh 小時,按12小時計 ...