cat /var/run/myProcess.pid | sudo xargs kill -9
In manchen Situationen je kompakter:
pkill -F /var/run/myProcess.pid
ist der Weg zu gehen. Ich hatte Probleme mit den Sorten:
kill $(cat /var/run/myProcess.pid)
# Or
kill `cat /var/run/myProcess.pid`
als ich den Befehl in etwas anderes einfügen musste, das ihn möglicherweise mit anderen Regeln analysiert, wie es Monit für seine Start-/Stoppbefehle tut.
Ich glaube, Sie erleben dies, weil Ihre Standard-Shell dash ist (die Debian-Almquist-Shell), aber Sie verwenden die Bash-Syntax. Sie können bash in der Shebang-Zeile mit so etwas wie
angeben#!/usr/bin/env bash
Oder Sie könnten den Bindestrich- und Bash-kompatiblen Backtick-Ausdruck verwenden, der von admdrew in den Kommentaren vorgeschlagen wird
kill -9 `cat /var/run/myProcess.pid`
Unabhängig davon können Sie sich nicht auf /bin/sh
verlassen bash sein.