一、shell編程能實現腳本的高效化,通常使用vim編輯器。
通常以.sh結尾;
標準腳本文件首行#!/bin/bash表示默認的命令解釋器,第二行#desc是一些描述信息。
二、變量的分類
局部變量(普通變量)
命名規則:必須以字母開頭,只能由字母、數字和下劃線組成。
推薦寫法:駝峯寫法,首個單詞首字母小寫,其它單詞首字母大寫
${var} 取變量的值
2.全局變量(環境變量)
命名規則:全大寫
臨時定義環境變量:export OLDBOY=10
env命令可查看系統的環境變量
全局環境變量配置文件:/etc/profile /etc/bashrc /etc/profile.d(當用戶登錄到系統,會自動運行其中的腳本)
用戶環境變量配置文件:~/.bash_profile ~/.bashrc
3.特殊變量:位置變量:
$0:當前腳本的filename
$n:第幾個參數
$#:腳本一共有多少個參數
特殊變量:進程狀態變量:
$?:上一個命令的執行結果,如果正常返回0,如果異常,返回非0
三、條件表達式(測試表達式)
判斷文件是否存在:[ -f /oldboy/oldboy.txt ] 存在返回0,不存在返回1
判斷目錄是否存在:[ -d /oldboy ] 存在返回0,不存在返回1
判斷整數:等於 -eq [ 1 -eq 1 ]
不等於 -ne
大於 -gt
大於等於 -ge
小於 -lt
小於等於 -le
四、if條件判斷
if [ $num1 -ge $num2];then ...
else ...
fi
五、for循環
for 變量名 in 列表
do 命令
done
六、優化Linux開機啓動項目
只保留crond;sshd;network;rsyslog;sysstat;其它都關閉。
for name in $(chkconfig|egrep -v 'crond|sshd|network|rsyslog|awk '{print $1}'')
do chkconfig $name off
done