Shell腳本設計7.1Shell腳本簡介以及編寫簡單腳本

Shell腳本設計7.1Shell腳本簡介以及編寫簡單腳本

ID:46948753

大?。?08.00 KB

頁數(shù):14頁

時間:2019-12-01

Shell腳本設計7.1Shell腳本簡介以及編寫簡單腳本_第1頁
Shell腳本設計7.1Shell腳本簡介以及編寫簡單腳本_第2頁
Shell腳本設計7.1Shell腳本簡介以及編寫簡單腳本_第3頁
Shell腳本設計7.1Shell腳本簡介以及編寫簡單腳本_第4頁
Shell腳本設計7.1Shell腳本簡介以及編寫簡單腳本_第5頁
資源描述:

《Shell腳本設計7.1Shell腳本簡介以及編寫簡單腳本》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫

1、第16講第7章Shell腳本設計7.1Shell腳本簡介 以及編寫簡單腳本引言什么是Shell腳本?什么時候需要Shell腳本?如何編寫一個簡單的Shell腳本?【問題1的提出】Geecy軟件開發(fā)公司的開發(fā)人員Tom在調(diào)試程序的過程中遇到了一個令人煩惱的問題:在運行一個用C語言編寫的應用程序的時候,該程序需要讀取一個包含當前時間值的文本文件,該文件的格式必須為:第1行是“月-日-年”,第2行是“時:分”?!締栴}1的提出】(續(xù))date命令的默認顯示格式是:“星期月日時:分:秒時區(qū)年”因此,Tom每次運行程序前,都要手工修改該數(shù)據(jù)文件,即先運行date命令,再修

2、改數(shù)據(jù)文件,最后運行該應用程序。而且從運行date命令到運行該應用程序最長時間不應該超過1分鐘,否則就要重新修改數(shù)據(jù)文件。【問題1分析】有兩種傳統(tǒng)的方法可以完成對該數(shù)據(jù)文件的修改:(1)使用文本編輯器即先運行date命令,記錄下當前時間,然后用vi打開該數(shù)據(jù)文件,再修改數(shù)據(jù)文件并保存退出,最后立即運行該C寫的應用程序。如果從運行date命令到運行該應用程序最長時間超過1分鐘,則影響該程序的調(diào)試,導致整個過程必須重做?!締栴}1分析】有兩種傳統(tǒng)的方法可以完成對該數(shù)據(jù)文件的修改:(1)使用文本編輯器(2)使用組合命令使用管道和重定向的組合命令,效率大為提高,但是仍然

3、需要輸入兩個很長的命令,操作上依然不太方便。date

4、cut-f2,3,6-d“"

5、tr"""-">data.txtdate

6、cut-f4-d""

7、cut-f1,2-d":">>data.txt【問題1分析】(續(xù))這兩種方法都存在一些缺點,不夠理想。事實上,可以采用編寫Shell腳本的方式完成此任務。7.1.1認識Shell腳本用戶可以把若干個命令保存到一個文本文件,然后使用該文件的名字一次執(zhí)行所有的命令。這些命令將逐行執(zhí)行。這樣的文本文件稱為Shell腳本(ShellScript)。簡稱腳本。腳本是一組命令的集合。凡是能夠在shell提示符下直接執(zhí)行的命令,

8、都可以在腳本中使用。腳本中還可以使用一些不能在shell提示符下直接執(zhí)行的語句,這些語句只有在腳本中使用才有效。7.1.2編寫簡單腳本使用vi編輯一個新文件fist_script:vifirst_script輸入以下兩行內(nèi)容:ls-F/date保存文件并退出vi。7.1.3運行腳本在命令提示符下使用某個Shell執(zhí)行該腳本。例如:bashfirst_script這種方法指定了一個特定的shell版本,此處是bash,來執(zhí)行該腳本文件;指定的shell將首先讀入腳本文件first_script,然后逐行執(zhí)行腳本中的命令,并依次輸出結(jié)果。當腳本文件中的命令依次執(zhí)行

9、完畢,該臨時的子shell也自動結(jié)束運行,返回到用戶原來使用的shell狀態(tài)下。7.1.3運行腳本(續(xù))另一種運行方式更為常見,即在文件中的開始部分指定一個將要使用的shell,例如,首先修改腳本,在開頭增加一行:#!/bin/bash--其中#!必須是第一行的前兩個字符,后接具體shell的絕對路徑。然后修改腳本的FAP,增加文件擁有者的執(zhí)行權(quán)限:chmodu+xfirst_script最后,象使用系統(tǒng)命令一樣直接運行腳本:./first_script注意:無空格7.1.3運行腳本(續(xù))關(guān)于直接運行腳本:./first_script中的“./”;由于默認搜索

10、路徑PATH并不包含當前工作目錄,因此需要添加“./”指定當前需要運行的腳本切確的路徑是在當前目錄中。顯然,也可以使用絕對路徑方式來直接告訴系統(tǒng)當前需要運行的腳本的切確路徑。用戶可以從文件/etc/shell獲知系統(tǒng)中所有可用的shell以及其絕對路徑。7.1.4注釋腳本為了增加可讀性,用戶可以在腳本中以行為單位插入注釋(Comment)。所注釋的行使用字符“#”開頭,當Shell遇到“#”開頭的行將會忽略該行,即運行時,注釋并不會顯示出來?!締栴}1解決方案】1、首先用vi創(chuàng)建新文件update;2、輸入下面的內(nèi)容;3、為腳本update加上執(zhí)行權(quán)限:chmo

11、du+xupdate4、隨時可以通過執(zhí)行腳本update快速生成測試數(shù)據(jù)文件data.txt#!/bin/bash#Addaformattedstringofdatetodata.txtdate

12、cut-f2,3,6-d""

13、tr"""-">data.txt#Addaformattedstringoftimetodata.txtdate

14、cut-f4-d""

15、cut-f1,2-d":">>data.txt#Displaythecontentofdata.txtcatdata.txt

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。