shell中的函式:
變數 條件 迴圈 函式 陣列 awk
function --> 函式
語法格式:
//函式名
function_name ()
function name
向函式中傳遞引數:
位置變數:
$0:表示當前指令碼的檔名
$#:表示多少個引數
$@:表示所有的位置引數
$1:表示第乙個引數
$2:表示第二個引數
定義乙個函式例項:
pass ()
定義函式:
pass one two three
執行結果:
pass.sh
3one two three
onetwo
one區域性變數和全域性變數:
a=1//a是全域性變數
echo $a
function a
echo $b
echo $a //結果為空,因為b是在函式體內定義的
系統變數:$funcname:表示當前函式的名稱
a ()
b ()
b執行結果:
先輸出b在輸出a
//執行函式b的過程
b () a}
breturn :
//引數返回,return語句可選的
//如果使用return語句,後面跟的值0-255;要是沒有使用
則以函式最後一條命令的執行結果作為返回值
檢查一下某個程序是否存在?
checkpid ()
//程序存在返回0 不存在返回1
checkpid $pid1 $pid2
if [ $? = 0 ] ; then
echo " is mrunning"
fi/proc 目錄 :虛擬目錄,系統記憶體的對映
遮蔽主機的ping命令:
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
函式呼叫的幾種特殊情況:
$$:shell本身的pid,就是指令碼執行的當前程序id號
$!:後台執行的最後乙個程序的程序id號
1.函式體內呼叫函式
2.將函式放入後台
3.遞迴呼叫函式 函式體內呼叫自己
fork炸彈:
.();.
shell指令碼11彈
shell指令碼程式設計 變數補充 if條件判斷 變數的型別 字串 數值 布林型別 true false null shell中指定變數的型別 declare declesar 內建命令 用來宣告和修改變數的屬性 唯讀 readonly r 設定為唯讀變數 declare r a 10 r 不能修改...
shell指令碼十二彈
1.使用正則處理條件 輸出以bash結尾的完整記錄 輸出整行 awk f bash etc passwd 輸出包含root的行 awk f root etc passwd print可以不寫 輸出root或者he賬號的使用者名稱和uid資訊 awk f root tom 輸出賬戶的名稱包含root的...
shell 指令碼第五彈
1.shell指令碼程式設計 1.指令碼是 c語言 程式設計 shell 指令碼 只作用於linux作業系統 以間隔多行命令 2.功能 批量處理檔案 自動去做某些功能 date,who,ls 處理日誌資訊 備份 刪除原日誌 上傳備份檔案 週期性計畫任務 3.學習方法 linux的命令 lamp we...