標籤:
linux,shell2015-02-07 1.計劃任務:corntab -e 編寫計劃任務 corntab -l查看計劃任務 corntab -r清除所有的計劃任務 如果要清除某一項計劃任務,就是進入計劃任務的編輯頁面,逐個刪除就可以了 2.任務計劃編寫與執行 內容: 格式 : 分 時 日 月 年 命令 [[email protected] cPre]# */5 * * * * 命令 #每隔5分鐘執行一次 [[email protected] cPre]# 00 09 * * 20 命令 #每周2到周日的9點執行一次命令 [[email protected] cPre]# 00 09 * * 2,3,4 命令 #每個周2,3,4的9點執行一次命令 3.linux下的反引號作用 date=`date "+%Y-%m-%d"` #反引號,表示反引號內的命令作為單個個體執行完之後再賦值 tar czf web-${date}.tar.gz web # $號的輸出格式 4.shell的變數類型與應用 a. 區分大小寫 不能以數字開頭 b. 格式 : 變數名 = 變數值 #變數提高代碼靈活度 (** 在linux中,變數賦值的指令之間不能帶有空格) c. 輸出變數 echo "輸出內容" name=‘liangi‘ echo $name echo "my name is ${name}" #注意$符號的使用 d. 變數的賦值 輸入賦值: read -p “Please inout your name: ” name #將輸入的值賦值給name echo $name e.不同的引號為變數賦值 (單雙引號都不能引用轉移字元) 雙引號 " " : 解析變數,就是說,雙引號裡面的時變數 單引號 ‘ ‘ : 不能解析變數,裡面的變數不能解析出來 反引號 ` ` : 把反引號裡的命令執行出來再賦值 f.刪除變數 unset name 定義變數使用了之後,把變數刪除unset之後,又可以重新賦值 2015-02-081. 位置變數 位置變數是先在指令碼裡定義好位置變數數,在執行的時候就是 # ./loca.sh 1 sd d f h 然後在接下來的輸出中就會顯示所定義的位置變數2. 預定義變數 將所有在學預定義變數的時候,所作的筆記注釋粘貼出來--start-- #!/bin/bash
#預定義變數測試與學習
#這個程式調試了很久,出錯原因主要是寫程式的時候粗心出錯,還有的就是空格的問題,shell的空格很講究的,就像是在終端輸入命令。因此,在寫linux-shell指令碼的>時候就當是在終端中輸入linux命令一樣,講究格式,以一顆在linux下輸入命令的心去寫linux指令碼
echo $0 #,顯示當前指令碼的名稱echo "你當前指令碼的名稱是:$0"
echo $# #擷取所有參數個數
echo ‘我是歌手‘
echo $* #列出變數是什麼
ls
echo $? #回饋上一條命令是否執行正確,正常,則返回0
total=0
for i in $*; do
total=$(($total+$i)) #將每個預定義變數相加,預定義的變數必須是數字才能相加
echo $total
done
echo $total
if [[ $? == 0 ]]; then
echo ‘上條命令執行成功‘
else
echo ‘上條命令執行不成功‘
fi # 標註出有問題的 程式
~ --end--3.shell指令碼的運算 expr 20 + 30 #空格要注意 number=`expr 20 + 30 / 2` #引用命令結果需要加上反引號 echo $((2 + 3 +4))4. shell指令碼的輸入與輸出 echo -e "sjdk \n ds" #-e解析輸出引用的轉移字元 echo -n "dsjk" #執行完該命令之後,游標不換行 同: read -p "Please Input Your Name: " name echo $name echo #直接輸出的是空行 指令碼輸出字型顏色--(需要echo -e才能識別) 文法 echo -e "\033[32;40m[ok]\033[0m" \033[前景顏色;背景顏色m \033[0m #0m代表恢複到系統色彩配置 代碼要寫全 顏色: 30-37 代表前景顏色 黑紅綠棕藍紫青白 40-47 代表背景顏色 黑紅綠棕藍紫青白5. cat 查看 cat<<x aaaa x #將任一字元xx裡面的原樣輸出-->可以用來做菜單 head 查看前十行 head -2 查看前2行 tail 查看後10行 tail -2 查看後2行 tee 輸出一份,還會儲存一份 ./te.sh | te.txt #儲存在目前的目錄 nl 在輸出的文本前面標出行號
學習shell指令碼日記