Der LightDm-Befehl funktioniert nicht im Shell-Skript

Der LightDm-Befehl funktioniert nicht im Shell-Skript

Ich habe ein Skript gefunden, das prüft, wann der Deckel geschlossen ist, und habe versucht, den Bildschirm zu sperren. Ich habe zuerst den folgenden Code ausprobiert, der funktioniert, aber es stellte sich heraus, dass er etwas ist, was ich nicht will. (Der Code prüft, ob der Deckel geschlossen ist, wenn ja, dann ist er geschlossen systemctl suspend.)

if [ "${1}" -eq 1 ]; then systemctl suspend 
fi

Ich habe geprüft, welcher Befehl für meine Anforderungen der richtige ist, und versucht, ihn einzugeben:

if [ "${1}" -eq 1 ]; then dm-tool switch-to-greeter 
fi

Als ich es ausprobiert habe, ist nichts passiert (der Befehl funktioniert im Terminal, aber nicht im Skript). Weiß jemand, wie man das behebt oder einen anderen Befehl, der das Gleiche tut?

verwandte Informationen