2、編寫/修改許可權及執行Shell程式的步驟

Ruthless發表於2013-06-21

學習目標
編寫Shell程式
執行Shell程式

正文
Shell程式有很多類似C語言和其他程式設計語言的特徵,但是又沒有程式語言那樣複雜。Shell程式是指放在一個檔案中的一系列Linux命令和實用程式。在執行的時候,透過Linux作業系統一個接一個地解釋和執行每條命令。首先,來編寫第一個Shell程式,從中學習Shell程式的編寫、修改許可權、執行過程。

i、編輯Shell程式
編輯一個內容如下的源程式,儲存檔名為date,可將其存放在目錄/home/study(練習專用目錄,不存在自己新建一個)下。
root@ubuntu:/home/study# vi dd
#! /bin/sh
echo "Mr.$USER,Today is:"
echo &date "+%B%d%A"
echo "Wish you a lucky day !"

注意:#! /bin/sh通知採用bash解釋。如果在echo語句中執行Shell命令date,則需要在date命令前加符號“&”,其中%B%d%A為輸入格式控制符。

ii、建立可執行程式
編輯完該檔案之後不能立即執行該檔案,需給檔案設定可執行程式許可權。使用如下命令。
root@ubuntu:/home/study# chmod +x dd

iii、執行Shell程式
執行Shell程式有下面三種方法:
方法一:
root@ubuntu:/home/study# ./dd

方法二:
另一種執行date的方法就是把它作為一個引數傳遞給Shell命令:
root@ubuntu:/home/study# bash dd

方法三:
為了在任何目錄都可以編譯和執行Shell所編寫的程式,即把/home/study的這個目錄新增到整個環境變數中。
root@ubuntu:/home/studyexport PATH=/home/study:$PATH
root@ubuntu:/home/study# dd

例項:編寫一個Shell程式mkf,此程式的功能是:顯示root下的檔案資訊,然後建立一個kk的資料夾,在此資料夾下建立一個檔案aa,修改此檔案的許可權為可執行。

分析:此Shell程式中需要依次執行下列命令為:
進入root目錄:cd /root
顯示root目錄下的檔案資訊:ls –l
新建資料夾kk: mkdir kk
進入root/kk目錄:cd kk
新建一個檔案aa:  vi aa  #編輯完成後需手工儲存
修改aa檔案的許可權為可執行:chmod +x aa
回到root目錄:cd /root
因此該Shell程式只是以上命令的順序集合,假定程式名為mkf

root@ubuntu:/home/study# vi mkf
mkf檔案新增如下內容:
cd /root
ls -l
mkdir kk
cd kk
vi aa
chmod +x aa
cd /root
root@ubuntu:/home/study# chmod +x mkf
root@ubuntu:/home/study# export PATH=/home/study:$PATH
root@ubuntu:/home/study# mkf

 

相關文章