cat /var/run/myProcess.pid | sudo xargs kill -9
Dalam beberapa situasi, semakin ringkas:
pkill -F /var/run/myProcess.pid
adalah cara untuk pergi. Saya mengalami masalah dengan varietasnya:
kill $(cat /var/run/myProcess.pid)
# Or
kill `cat /var/run/myProcess.pid`
ketika saya harus memasukkan perintah ke dalam sesuatu yang lain yang mungkin menguraikannya menggunakan aturan yang berbeda, seperti yang dilakukan Monit untuk perintah start/stop.
Saya yakin Anda mengalami ini karena shell default Anda adalah tanda hubung (shell debian almquist), tetapi Anda menggunakan sintaks bash. Anda dapat menentukan bash di baris shebang dengan sesuatu seperti,
#!/usr/bin/env bash
Atau, Anda dapat menggunakan ekspresi back-tick yang kompatibel dengan tanda hubung dan bash yang disarankan oleh admdrew di komentar
kill -9 `cat /var/run/myProcess.pid`
Terlepas dari itu, Anda tidak dapat mengandalkan /bin/sh
menjadi bash.