Ho creato uno script bash per uccidere il processo attivo cercando per nome
pkill.sh
#~/bin/bash
pro='ps aux | grep $1 | grep -v sh | grep -v grep | awk '{print $2}''
if [ !-z "$pro" ]
then
echo $1 process is not running
else
kill -9 $pro
echo $1 process killed forecfully, process id was $pro.
fi
ed esegui questo script di shell nel terminale (v 2.8) come segue
sh pkill.sh mongod
il lavoro è finito, ma dà anche l'errore
pkill.sh: line 3: [: !-z: unary operator expected kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec] mongod process killed forecfully, process id was .
perché questo script dà un errore?
Ho provato con
if[[ !z "$pro ]]
ma nessun aiuto.
Per favore dimmi come scrivere script bash esattamente validi