Ich versuche, dies als eine launchd ausführen zu lassen, habe ich die PLIST und aktiviert den Überwachungspfad zu überprüfen, wenn Studenten Fernverwaltung ändern.Fehler in Bash Shell Skript IF-Anweisung
Ich möchte eine if-Anweisung, die prüft, ob der ARD-Agent ausgeführt wird und nicht den Kickstart-Befehl ausführt.
Wenn der Dienst nicht läuft, funktioniert es einwandfrei. aber wenn der Dienst bereits läuft, bekomme ich diesen Fehler
/Users/user/Desktop/test.sh: line 3: [[: 14682 0 com.apple.RemoteDesktop.agent: syntax error in expression (error token is "0 com.apple.RemoteDesktop.agent")
Hier ist das Skript;
#!/bin/bash
if [[ $(launchctl list | grep '^\d.*RemoteDesktop.*') -eq "" ]]; then
sudo sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -users admin -access -on -privs -all
else
exit 0
fi
Wenn jemand helfen könnte, wäre es sehr geschätzt.
'launchd' Ihr Skript ausgeführt wird mit'/bin/sh', nicht '/ bin/bash', so' [[] ist kein legales Kommando. – chepner