So flashen Sie den Bildschirm von der Befehlszeile aus

Gibt es eine Möglichkeit, den Bildschirm von der Befehlszeile aus zu flashen? Ich suche nach dem gleichen Effekt, den die Barrierefreiheit für "Bildschirm aufleuchten lässt, wenn ein Warnton auftritt", aber ich möchte es nicht für jede Warnung.

Antworten (5)

Soweit ich weiß, können Sie diese Warnung nicht replizieren, ohne diese Option zu aktivieren. Wenn Sie diese Option aktivieren, können Sie mit Terminal einen Blitz auslösen:

osascript -e "beep"

Wenn Sie diese Option jedoch nicht aktivieren möchten, können Sie Farben umkehren verwenden. Die zweimalige Verwendung der Barrierefreiheitsoption Farben umkehren lässt den Bildschirm blinken, daher wird das zweimalige Drücken der Tastenkombination ⌃⌥⌘8 ein Blinken auslösen:

#!/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
Ich frage mich, ob das Skript prüfen kann, ob die aktuelle Einstellung piepen oder blinken soll, und dann die Einstellung bei Bedarf ändern, den "Piep" aufrufen und dann die Einstellung zurücksetzen kann (nur wenn es eine Änderung vorgenommen hat?).
Sieht so aus, als ob diese andere Antwort eine noch bessere Implementierung meines obigen Codekommentars gefunden hat. apple.stackexchange.com/a/288696/5472

Es blinkt nicht den gesamten Bildschirm (es sei denn, Sie haben das Terminal auf Vollbild eingestellt), aber wenn Sie zu gehen Preferences > Settings > Advancedund "Visual Bell" auswählen, können Sie Folgendes eingeben:

echo ^G

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

um das Terminalfenster zu flashen.

Während dies funktioniert, ist der Effekt in meinem Standard-Terminalprofil sehr subtil.
Eine weitere Option ist printf '\a'.

Dies funktioniert für mich in Sierra über 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"
Sehr elegante Lösung. Ich hatte bei einer anderen Antwort vorgeschlagen, die Einstellungen tatsächlich zu ändern (falls erforderlich), einen Piepton zu rufen und die Einstellungen zurückzusetzen. Dies scheint viel besser zu sein, um einmalige Blitze zu bekommen.
@bmike Das Problem dabei ist, dass die Ausführung einige Sekunden dauert, insbesondere wenn die App nicht zuerst geöffnet wird. Abgesehen davon ist es zweifellos elegant
In der Tat @grgarside - um hier schneller zu werden, müssten Sie wahrscheinlich Python und die Ziel-c-Bindungen verwenden, um ein Skript zu erstellen, das im Wesentlichen eine kleine Kakao-App ist, um die Einstellung oder den Aufruf der Funktion zu beschleunigen.

Für andere habe ich eine Alternative gefunden, um das Helligkeits-Befehlszeilentool 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

Die erste Zeile installiert Helligkeit, die zweite zeigt Ihnen, wie Helligkeit in Aktion aussieht.

brew install brightness
brightness 0; sleep 1; brightness 1

Es funktioniert jedoch nur auf dem Hauptdisplay. Wem diese Form der Helligkeitsumschaltung zu langsam ist, der experimentiert mit sleep 0.3 oder sogar sleep 0.1.

Sie können auch die aktuelle Helligkeit abrufen, damit Sie nicht auf Folgendes zurücksetzen 1:

setopt rematchpcre # needs zsh
if [[ "$(brightness -l)" =~ 'display 0: brightness (\S+)' ]]; then
    print -r -- "$match[1]"
else
    return 1
fi
etwas fehlt ?
Was fehlt @Buscar?
Ich habe es satt und es funktioniert nicht auf meinem MBA 10.9.2 Fehler -bash: screenbrightness: Befehl nicht gefunden
@Buscar웃 Der Grund ist, dass du eigentlich keine App namens screenbrightness hast. Was Sie tun können, ist, Homebrew ( brew.sh ) zu installieren und dann ein "brew install helligkeit" durchzuführen - und dann "helligkeit 0; schlafen 1; helligkeit 1" auszuführen - zum Beispiel.

Dies ist ein Shellscript, das Applescript aufruft, um dies zu tun (der Code muss näher 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
Diese Antwort ist genau derselbe Code wie eine andere Antwort, sechs Monate später.