如何停止執行Shell腳本中的背景進程
P粉722409996
2023-09-03 18:16:08
<p>我正在嘗試在後台運行mysqld以使用mysql客戶端執行一些命令,但是當我將進程切換到前台時,我的腳本停止運行。這是我使用的腳本:</p>
<pre class="brush:sh;toolbar:false;">set -m
daemon="/usr/bin/mysqld --user=mysql --console --skip-name-resolve --skip-networking=0 $@"
$daemon &
exec echo "Test"
exec fg %1
</pre>
<p>我不是shell腳本程式設計專家,我在一些網站上尋找並找到了這種執行命令的方法。 </p>
不。腳本在
exec echo "Test"
後停止。exec
用後面的指令取代目前進程(即shell腳本)。您可以透過以下方式進行驗證:解決方案很簡單:不要使用
exec
。順便說一下:不清楚為什麼您想在shell腳本中使用
fg
。在互動式shell中,fg
只在腳本中沒有功能。