shell例項 十五 exec命令

2021-05-24 13:04:05 字數 1068 閱讀 8637

1.乙個exec自身的指令碼

sleep 2

exec $0

echo "this line will never echo!"

exit 0

2.

shopt允許shell在空閒時修改shell選項,經常出現在啟動檔案中。

shop -s cdspell ---------使用cd命令時,允許少量的錯誤

cd /hpme ---- 應該是/home

pwd  ----------/home

3.caller命令放入函式中,將顯示呼叫該函式的呼叫者資訊

4.type [cmd]

將給出命令的完整路徑

5.作業控制命令

#! /bin/sh

root_uid=0

e_notroot=65

e_noparams=66

if [ "$uid" -ne "$root_uid" ]

then

echo "must be root to run this script."

exit $e_notroot

fiif [ -z "$1" ]

then

echo "usage:  `basename $0` find-string"

exit $e_noparams

fiecho "updating 'locate' database..."

echo "this may make a while ."

updatedb /usr &

wait

locate $1

exit 0

6.結束自身指令碼程式

#! /bin/sh

kill &&  ----------------&&相當於pid

echo "this line will not echo"

exit 0

shell 內建命令 exec

exec 命令並不啟動新的 shell,而是用要被執行的命令替換當前的 shell 程序,並且將老程序的環境清理掉,exec 命令後的其它命令將不再執行。exec 在執行時會將當前的 shell process 關閉,然後切換到後面的命令繼續執行。在乙個 shell 中執行 exec ls,列出當前...

tcl使用exec呼叫shell命令出錯的問題解決

tclsh呼叫使用exec呼叫shell命令的時候經常出錯,如 但是實踐中還是很麻煩,兩種比較方便的解決方案,是使用exec來執行sh,再用sh執行需要的命令 方案一 使用exec sh c 例如 cat passwd 2 dev null cut d f1 sort uniq exec sh c ...

解決php的exec 不執行shell命令的問題

最近遇到乙個問題,客戶會同時輪詢修改上百條資料,併發性又很高,但又不是很頻繁地使用,於是寫了乙個悲觀鎖,使用佇列在後台非同步處理,使用exec主動觸發任務。public function lock test 1.這裡使用exec主動觸發任務 也可以使用system呼叫sh指令碼,指令碼中也要將返回寫...