編寫乙個判斷指令碼

2021-10-06 07:15:11 字數 1271 閱讀 1656

4案例4:編寫乙個判斷指令碼

4.1 問題

本例要求在虛擬機器server0上建立/root/foo.sh指令碼,任務目標如下:

當執行/root/foo.sh redhat,輸出為fedora

當執行/root/foo.sh fedora,輸出為redhat

當沒有任何引數或者引數不是redhat或者fedora時,其錯誤輸出產生以下資訊:/root/foo.sh redhat|fedora

4.2方案

shell指令碼中執行條件測試的方法:

if  條件測試操作1;then

命令序列1....

elif 條件測試操作2;then

命令序列2....

else

命令序列3....

fi

4.3步驟

實現此案例需要按照如下步驟進行。

1)編寫指令碼**

[root@server0 ~]# vim  /root/foo.sh

#!/bin/bash

if [ $# -eq 0 ];then

echo "/root/foo.sh redhat|fedora" >&2

elif [ $1 = "redhat" ];then

echo "fedora"

elif [ $1 = "fedora" ];then

echo "redhat"

else

echo "/root/foo.sh redhat|fedora" >&2

fi

2)新增執行許可權

[root@server0 ~]# chmod  +x  /root/foo.sh
1)測試提供正確引數的情況

[root@server0 ~]# /root/foo.sh  redhat

fedora

[root@server0 ~]# /root/foo.sh fedora

redhat

2)測試提供非預期引數的情況

[root@server0 ~]# /root/foo.sh  ubuntu

/root/foo.sh redhat|fedora

3)測試不提供引數的情況

[root@server0 ~]# /root/foo.sh

/root/foo.sh redhat|fedora

判斷指令碼載入是否完成的方法

我們可以對載入的 js 物件使用 onload 來判斷 js.onload 此方法 fi程式設計客棧refox2 firefox3 safari3.1 opera9.6 瀏覽器都能很好的支援,但 ie6 ie7 卻不支援。曲線救國 ie6 ie7 我們可以使用 js.onreadystatechan...

幫忙編寫乙個vbs指令碼

2007 12 20 13 00 xiaomingtt 分類 使用 要求執行後,將於該指令碼位於同一資料夾下的另乙個vbs指令碼abc.vbs複製到系統目錄.再將該檔案寫進登錄檔啟動項,使其隨系統一起啟動.先提供20分.寫好後可以加分.qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq...

第乙個shell指令碼編寫

開啟shell環境 mac系統下,自帶的終端就是乙個標準的shell環境,筆者這裡沒有使用自帶的終端,而是自己安裝了iterm2,這也是乙個標準的shell環境。建立shell指令碼的路徑 mkdir p shell script建立shell指令碼1 shell指令碼的格式是.sh的檔案,使用vi...