我一直在試圖理解這段代碼,但是我無法得到它的全部內容。我知道'init'是第一個啓動過程,並且該程序用於啓動或結束特定的服務。但是'kill'中的'cat'會做什麼?當這個程序啓動,停止和重新啓動時,系統內部發生了什麼?shell腳本中的初始化程序
#!/bin/sh
test -f /usr/sbin/sshd || exit 0
case "$1" in
start)
echo -n "Starting sshd: sshd"
/usr/sbin/sshd
echo "."
;;
stop)
echo -n "Stopping sshd: sshd"
kill `cat /var/run/sshd.pid`
echo "."
;;
restart)
echo -n "Stopping sshd: sshd"
kill `cat /var/run/sshd.pid`
echo "."
echo -n "Starting sshd: sshd"
/usr/sbin/sshd
echo "."
;;
*)
echo "Usage: /etc/init.d/sshd start|stop|restart"
exit 1
;;
esac
我想你已經混淆了'init'進程和啓動服務的'init.d'腳本。我可能有 –
。你能解釋一下我的代碼嗎? –
這只是一個普通的shell腳本。你只需要閱讀它看看它是什麼。如果你不知道「貓」或「殺」是什麼,那麼我建議你看看他們的手冊頁。那個init腳本(init.d中的服務啓動腳本被稱爲「init腳本」,這可能讓你感到困惑)是'sshd'服務/守護進程的腳本。 'init'進程/程序也有一個手冊頁。 –