So flashen Sie den Bildschirm von der Befehlszeile aus

6

Gibt es eine Möglichkeit, den Bildschirm über die Befehlszeile zu flashen? Ich suche den gleichen Effekt wie bei der Eingabehilfe für "Bildschirm blinken lassen, wenn ein Warnton ertönt", möchte ihn jedoch nicht für jede Warnung verwenden.

Studgeek
quelle

Antworten:

6

Soweit ich weiß, können Sie diese Warnung nicht replizieren, ohne diese Option zu aktivieren. Wenn Sie diese Option aktivieren, können Sie einen Flash vom Terminal aus auslösen, indem Sie Folgendes verwenden:

osascript -e "beep"

Wenn Sie diese Option jedoch nicht aktivieren möchten, können Sie Farben invertieren. Wenn Sie die Option „Farben umkehren“ zweimal verwenden, blinkt der Bildschirm. Wenn Sie die Tastenkombination ⌃⌥⌘8 zweimal drücken, blinkt Folgendes:

#!/usr/bin/osascript
tell application "System Events" to repeat 2 times
key code 28 using {command down, control down, option down}
delay 0
end repeat
grg
quelle
Ich frage mich, ob das Skript überprüfen kann, ob die aktuelle Einstellung ein Piepton oder ein Blinken ist, und dann die Einstellung bei Bedarf ändern kann. Rufen Sie den "Piepton" auf und ändern Sie dann die Einstellung zurück (nur, wenn eine Änderung vorgenommen wurde?).
bmike
Es sieht so aus, als hätte diese andere Antwort eine noch bessere Implementierung meines obigen Codekommentars gefunden. apple.stackexchange.com/a/288696/5472
bmike
3

Es blinkt nicht der gesamte Bildschirm (es sei denn, Sie haben das Terminal auf Vollbild eingestellt). Wenn Sie jedoch Preferences > Settings > Advanced"Visual Bell" auswählen, können Sie Folgendes eingeben:

echo ^G

(Die Tastenanschläge, um die richtigen Zeichen zu erhalten, lauten: echo control+ v control+, gda das Steuerzeichen in Anführungszeichen gesetzt werden muss)

um das Terminalfenster zu blinken.

dwightk
quelle
1
Während dies funktioniert, ist der Effekt auf meinem Standard-Terminalprofil sehr subtil.
grg
Eine andere Option ist printf '\a'.
Zneak
1

Für andere besteht eine Alternative darin, das Befehlszeilentool für Helligkeit zu verwenden , das über Homebrew verfügbar ist (Anweisungen zur Installation finden Sie unter http://brew.sh ). Link zur Diskussion: https://apple.stackexchange.com/a/127258/23876

In der ersten Zeile wird Brightness installiert, in der zweiten Zeile wird angezeigt, wie Helligkeit in Aktion aussieht.

brew install brightness
brightness 0; sleep 1; brightness 1

Dies funktioniert jedoch nur auf dem Hauptdisplay. Wenn Ihnen diese Art der Helligkeitsumschaltung zu langsam ist, experimentieren Sie mit Schlaf 0.3 oder sogar Schlaf 0.1.

Studgeek
quelle
etwas fehlt ?
Ruskes
Was fehlt @Buscar?
Studgeek
Ich habe es satt, und es funktioniert nicht auf meinem MBA 10.9.2 Fehler-Bash: Bildschirmhelligkeit: Befehl nicht gefunden
Ruskes
@Buscar 웃 Der Grund ist, dass Sie keine App namens screenbrightness haben. Was Sie tun können, ist, Homebrew ( brew.sh ) zu installieren und dann eine " Brühinstallationshelligkeit " durchzuführen - und dann "Helligkeit 0; Schlaf 1; Helligkeit 1" auszuführen - zum Beispiel.
Esaruoho
1

Das funktioniert bei mir in Sierra per Applescript:

tell application "System Preferences"
    run
    reveal anchor "Hearing" of pane id "com.apple.preference.universalaccess"
end tell
tell application "System Events" to tell process "System Preferences" to click button "Test Screen Flash" of window "Accessibility" of application process "System Preferences" of application "System Events"
user243953
quelle
Sehr elegante Lösung. Ich hatte eine andere Antwort vorgeschlagen, um die Einstellungen tatsächlich zu ändern (falls erforderlich), einen Signalton abzurufen und die Einstellungen zurück zu ändern. dies scheint viel besser zu sein, um einmalige Blitze zu bekommen.
bmike
@bmike Das Problem dabei ist, dass die Ausführung einige Sekunden dauert, insbesondere wenn die App nicht zuerst geöffnet wird. Ansonsten ist sie zweifellos elegant
grg
@Grgarside - aus Gründen der Geschwindigkeit müssten Sie wahrscheinlich Python und die Objective-C-Bindungen verwenden, um eine im Wesentlichen kleine Kakao-App zu erstellen, die das Einstellen oder Aufrufen der Funktion beschleunigt.
bmike
0

Dies ist ein Shellscript, das dazu Applescript aufruft (der Code muss genauer erklärt werden).

#!/usr/bin/osascript
tell application "System Events" to repeat 2 times
key code 28 using {command down, control down, option down}
delay 0
end repeat
Poop
quelle
Diese Antwort entspricht genau dem Code einer anderen Antwort, sechs Monate später.
r_alex_hall