shell指令碼基礎(14)

2021-09-11 03:10:22 字數 1040 閱讀 5817

指令碼訊號捕捉技術

sighup:掛起程序[1]

siging:來自鍵盤的終端ctrl+c[2]

sigquit:從鍵盤退出ctrl+\[3]

sigkill:無條件終止[9]

當apache埠改變之後,kill -hup 3349或者kill -1 3349或者kill -hup httpd可以不需要重啟apache

#!/bin/bash

#signal.sh

#訊號測試

while :

doecho 'aaa';

done

捕捉到乙個訊號後,它可能會採取下面三種操作之一:

1、不採取任何行動,由系統來處理

2、捕捉該訊號,但忽略它

3、捕捉該訊號,但採取相應的行動

kill -9是無條件殺到程序

trap訊號捕捉

trap命令使用

trap "function" signal

1)signal為接受到的訊號

2)function為執行函式

常見行動

1)清除臨時檔案

2)忽略該訊號

3)詢問使用者是否中止指令碼執行

[trap訊號捕捉-1]

#!/bin/bash

#signal.sh

#訊號捕捉

trap 'myfunc' 2         #捕捉到kill操作

function myfunc()

i=0while :

dolet i++

echo $i

sleep 1

done

[trap訊號捕捉-2]

#!/bin/bash

#signal.sh

#訊號捕捉

#與使用者發生互動

trap 'myfunc' 2         #捕捉到kill操作

function myfunc()

i=0while :

dolet i++

echo $i

sleep 1

done

shell指令碼基礎

執行shell指令碼有兩種方法 1 作為可執行程式 將上面的 儲存為 test.sh,並 cd 到相應目錄 chmod x test.sh 使指令碼具有執行許可權 test.sh 執行指令碼 注意,一定要寫成 test.sh,而不是 test.sh,執行其它二進位制的程式也一樣,直接寫 test.s...

shell指令碼基礎

shell定義 shell是命令解析器,將使用者的輸入的指令轉化為機器可以執行的程式。和c語言不同,指令碼有自己的語法。比較常用的格式是 bin bash或者 bin sh 如 這是乙個判斷輸入字元型別的程式 bin bash read key case in a z echo upperlette...

Shell指令碼基礎

1 shell是使用者與核心進行互動操作的一種介面,目前最流行的shell稱為bash shell 2 shell也是一門程式語言 解釋型的程式語言 即shell指令碼 3 乙個系統可以存在多個shell,可以通過cat etc shells命令檢視系統中安裝的shell,不同的shell可能支援的...