Saya cuba menjalankan mysqld di latar belakang untuk melaksanakan beberapa arahan menggunakan klien mysql, tetapi apabila saya menukar proses ke latar depan, skrip saya berhenti berjalan. Ini adalah skrip yang saya gunakan:
set -m daemon="/usr/bin/mysqld --user=mysql --console --skip-name-resolve --skip-networking=0 $@" $daemon & exec echo "Ujian" exec fg % 1Saya bukan pakar pengaturcaraan skrip shell, saya melihat beberapa tapak web dan mendapati kaedah melaksanakan arahan ini.
Tidak. Skrip dalam
exec echo "Test"
后停止。exec
menggantikan proses semasa (iaitu skrip shell) dengan arahan berikut. Anda boleh mengesahkan melalui:Penyelesaiannya mudah: jangan gunakan
exec
.BTW: Tidak jelas mengapa anda ingin menggunakan
fg
。在交互式shell中,fg
dalam skrip shell, ia tidak berfungsi dalam skrip.