1、打印一些頭信息
command << dilimiter
……
……
dilimiter
以分界符號dilimiter中的內(nèi)容作為命令的標(biāo)準(zhǔn)輸入
常用在echo命令中,這樣就避免了沒輸出一行就要使用一個echo命令,同時,輸出格式的調(diào)整也相應(yīng)變得簡單了。
例如: echo << something_message
**********************
hello, welcome to use my shell script
**********************
something_message
將在屏幕上輸出:
**********************
hello, welcome to use my shell script
**********************
2、利用<<的分解符號性質(zhì)還可以自動選擇菜單或?qū)崿F(xiàn)自動的ftp傳輸
也就是利用分解符號的性質(zhì)自動選擇菜單。
例如: ./menu_choose >>output_file 2>&1 <<Choose
2
3
Y
Choose
則自動在執(zhí)行腳本的過程中一步步作出選擇:2,3,Y
<<這種性質(zhì)決定了它是理想的訪問數(shù)據(jù)庫的有用工具,可以用它來輸入面對數(shù)據(jù)庫提示時所作的各種選擇。
3、創(chuàng)建一個長度為0的空文件
執(zhí)行 > file_name 命令或 touch file_name 命令。
4、一些常用的shell變量
$# 傳遞到腳本的參數(shù)個數(shù)
$* 以一個單字符串顯示所有向腳本傳遞的參數(shù)(可大于9個)
$$ 腳本運行的當(dāng)前進程的ID號
$! 后臺運行的最后一個進程的ID號
$@ 與$#相同,但使用時加引號,并在引號中返回每個參數(shù)
$- 顯示shell使用的當(dāng)前選項
$? 顯示最后命令的退出狀態(tài),0表示無錯誤(這個變量也常常用來打印輸出,在腳本調(diào)試時標(biāo)記某個shell命令或某個函數(shù)是否正確執(zhí)行,但是要注意,$?記載的是最近的函數(shù)或命令的退出狀態(tài),因此打印時應(yīng)該立即打印以獲得正確的信息)
$0的使用
在變量中有一種位置變量$n,用來存放函數(shù)調(diào)用或腳本執(zhí)行時傳入的參數(shù),其中$0表示函數(shù)名或腳本名,需要注意的是,這時的腳本名傳遞的是包含全路徑的腳本名。從$1-$9表示傳入的第一到第九個參數(shù),這樣的參數(shù)表示不能多于九個,如果多于九個,可以使用下面將要提到的shift指令來讀取。
因為$0存放函數(shù)名或腳本名,因此我們可以通過echo $0來輸出調(diào)用信息,但是,由于存放的是全路徑名,我們可以利用一個shell命令來得到腳本名,basename $0 將得到$0中名字的部分,而與之相反的,dirname $0將得到$0中路徑的部分。
5、Shift的運用
用head或tail指令指定查閱的行數(shù)
例如:查閱文件前20行: head –20 file_name
查閱文件后10行: tail –10 file_name
新聞熱點
疑難解答