初學Ubuntu:shell編程

1、Shell介紹
Shell是用戶與內核之間的橋樑,也可以當作Linux中的編程語言。
Shell與用戶交互的模式:在交互環境下,每次執行一條命令;通過編寫Shell腳本的方式
2、Shell的編寫
Shell解釋器
#!解釋器    eg:#!/bin/bash
Shell的變量類型
環境變量:Shell環境下已經存在的一些系統變量,eg:PWD,PATH,UID
自定義變量:變量名 = 變量值       等號兩邊不能加空格
預定義變量:
$0    當前執行shell腳本的程序名
$1  $2  ...  $n   代表第一個、第二個......第n個位置參數的值
$#    傳遞的位置參數的個數
$*     所有位置參數的值
$?   返回上一條命令是否執行成功,成功爲0,不成功非0
3、Shell腳本執行方式
方式1:直接通過腳本文件的位置執行(必須添加x執行權限)
方式2:sh 腳本文件位置
方式3:source 腳本文件位置
4、Shell的程序流程控制
if條件判斷語法:
if [ 判斷條件表達式 ]
then
測試通過,執行此處
else
測試不通過,執行此處
fi
注意:文件判斷的常用選項:-d是否爲目錄;-f是否爲文件;-e是否存在
for循環語句
for 循環變量 in 可被循環的表達式
do
循環內容
done
while循環語句
while [ 判斷條件表達式 ]
do
循環內容
done
5、計劃定時任務
使用crontab命令操作定時任務
crontab 【選項】【配置文件】
選項:
-e    編輯當前用戶定時任務
-l     列出定時任務
-r     刪除定時任務
如果當前用戶要編輯其他用戶的定時任務,則需要有root權限(sudo),而且需要指定-u選項。eg:sudo crontab -u tom -e
注意:每個用戶都有自己的定時任務文件。
用戶定時任務文件:
m     h      dom    mon      dow   command
32    */2       *            *             *          date >> /home/rcw/log.txt
意思是:每天每隔2小時的32分,將當前時間寫入對應的文件中
如果要執行以root用戶權限執行的任務,應該在/etc/crontab文件下加定時任務,user字段填寫root就可以使用root權限執行了。
/etc/cron.daily每天都會執行該目錄下的腳本
/etc/cron.weekly每週都會執行該目錄下的腳本
/etc/cron.monthly每月都會執行該目錄下的腳本

發佈了45 篇原創文章 · 獲贊 87 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章