我想通過shell腳本終止進程,它給了我錯誤。以下是我試過到目前爲止:試圖通過shell腳本來終止進程
當我試圖殺死MEMCACHE它給我的錯誤,如「殺:沒有這樣的過程」,我用下面的命令:
ps -ef | grep "memcache" | awk '{print $2}' | xargs kill;
,或者試圖象下面這樣:
kill -9 $(pidof memcache)
我得到錯誤象下面這樣:「:參數必須是流程或作業ID」
當我直接在命令提示符下運行過程中運行:
[email protected]:~/parasol$ ps aux | grep memcache
memcache 873 0.0 0.0 323220 1188 ? Sl 22:56 0:00 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1
ring 1714 0.0 0.0 9384 920 pts/0 S+ 23:45 0:00 grep --color=auto memcache
我REFF到https://askubuntu.com/questions/239923/shell-script-to-9-kill-based-on-name 和 Shell script to capture Process ID and kill it if exist
我的Ubuntu版本:
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.04
DISTRIB_CODENAME=precise
DISTRIB_DESCRIPTION="Ubuntu 12.04.2 LTS"
NAME="Ubuntu"
VERSION="12.04.2 LTS, Precise Pangolin"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu precise (12.04.2 LTS)"
VERSION_ID="12.04"
如果'pidof memcache'或'ps -ef | grep「memcache」| awk'{print $ 2}''?看起來沒問題。 – keltar
你檢查http://stackoverflow.com/a/160926/2231893 – abasu
pidof memcache不給任何東西,沒有錯誤沒有ID。 –