腳本最好都放在/usr/local/sbin中 腳本的執行 sh -x 腳本.sh -x可以查看執行過程 1在腳本中使用變數 使用變數的時候,需要使用$符號: #!/bin/bash ##把命令賦值為變數,需要使用反引號 d=`date +"%H:%M:%S"` echo "The script b ...
腳本最好都放在/usr/local/sbin中
腳本的執行 sh -x 腳本.sh -x可以查看執行過程 1在腳本中使用變數 使用變數的時候,需要使用$符號: #!/bin/bash ##把命令賦值為變數,需要使用反引號 d=`date +"%H:%M:%S"` echo "The script begin at $d" echo "Now we'll sleep 2 seconds" sleep 2 d1=`date +"%H:%M:%S"` echo "The script end at $d" 2在腳本中使用數學運算要用[]括起來如下 #! /bin/bash a=1 b=2 ##數學運算用[]括起來 sum=$[$a+$b] echo "$a + $b = $sum" 3在腳本中和控制台交互 使用read命令 #! /bin/bash read -p "Please input a number: " x read -p "Please input a number: " y sum=$[$x+$y] echo "The sum of the tow numbers is : $sum" 4shell中的預設變數 #! /bin/bash echo "$1 $2 $3 $0" 1 2 就是腳本中的預設變數 一個腳本中的預設變數是沒有限制的,0表示腳本文件本書 # sh option.sh 1 2 3 執行此命令輸出內容如下所示: 1 2 3 option.sh 5shell中的邏輯判斷 不帶else的if 註意if後面的判斷語句要用(())否則會報錯 #! /bin/bash read -p "Please input your score: " a if ((a<60)); then echo "You didn't pass the exam." fi 5.1帶else 實例代碼如下 #! /bin/bash read -p "Please input your score: " a if ((a<60)); then echo "You didn't pass the exam." else echo "Good! You passed the exam." fi 5.2帶有else if(這是c中的說法)在shell中表示為elif #! /bin/bash read -p "Please input your score: " a if ((a<60)); then echo "You didn't pass the exam." elif ((a>=60)) && ((a<85)); then echo "Good! You passed the exam." else echo "Very good! Your score is very heigh" fi 5.3case 邏輯判斷 #! /bin/bash read -p "Input a number: " n a=$[$n%2] case $a in 1) echo "The number is odd." ;; 0) echo "The number is even." ;; *) echo "It's not a number" ;; esac * 表示其他值 6for迴圈 實例代碼如下: #! /bin/bash for file in `ls`;do echo $file done 7while 迴圈 #! /bin/bash a=5 while [ $a -ge 1 ]; do echo $a a=$[$a-1] done