Hotkey zum Anzeigen versteckter Dateien und Ordner im Dialogfeld "Datei öffnen"?

262

Diese Frage ist sehr ähnlich zu Ist es möglich, versteckte / Punktedateien in Dialogfeldern zum Öffnen / Speichern immer anzuzeigen? . Wie zeige ich versteckte Dateien und Ordner im Finder an? ist auch verwandt. Ich möchte sie jedoch nicht immer zeigen, und genau das defaults write ... AppleShowAllFiles ...tut es.

Vielmehr möchte ich es bei Bedarf einschalten. Ich versuche zu öffnen .bash_profile, also brauche ich es jetzt:

Bildbeschreibung hier eingeben

Mit Linux und Gnome können wir CTRL+ Hzwischen dem Ein- und Ausblenden von versteckten Dateien umschalten. Aber Gnome-Hotkeys funktionieren unter OS X nicht (was erwartet wird).

Der Vollständigkeit .bash_profilehalber existiert im Home-Verzeichnis:

$ ls ~/.bash_profile 
/Users/jww/.bash_profile

Eine verwandte Frage ... Wie oben zu sehen ist, hat die Eingabe des Dateinamens in der Finder-Suche (oder in Spotlight) nicht funktioniert. Ich habe versucht, mit der rechten Maustaste zu klicken, um ein Kontextmenü im Dialogfeld "Datei öffnen" zu erhalten, in der Hoffnung, ein Kontrollkästchen wie "Alle Dateien anzeigen" zu aktivieren. Und ich habe versucht, das Menü "Ansicht" mit dem Dialogfeld "Datei öffnen" auf "Alle Dateien anzeigen" zu überprüfen.

Warum ist das irgendwo versteckt? Welchen Zweck hat es, dass ein Benutzer eine Datei nicht einfach öffnen kann?

Gemeinschaft
quelle

Antworten:

452

⌘ CMD+ ⇧ SHIFT+ .Zeigt versteckte Dateien im Finder und Öffnen / Speichern - Dialoge.

Wenn Sie eine AZERTY-Tastatur verwenden, müssen Sie auch drücken. fnDies ⇧ SHIFTwird berücksichtigt, da Sie diese bereits für die Erstellung der Tastatur benötigen ..


Sie können auch ⌘ CMD+ ⇧ SHIFT+ drücken Gund den Pfad zum versteckten Ordner eingeben, genau wie in Terminal (die ⇥ TABautomatische Vervollständigung funktioniert auch).

Das Bearbeiten versteckter Dateien kann gefährlich sein, wenn Sie nicht wissen, was Sie tun.

Mateusz Szlosek
quelle
7
Funktioniert für mich in der Spaltenansicht, wenn ich den Pfad ändere - zu einem anderen Laufwerk & zurück usw. - oder die Ansicht zu Symbol & zurück ändere.
Tetsujin
10
Die Tastenkombination "cmd + shift +". scheint in Finder in Sierra (nicht nur in den Dialogfeldern zum Öffnen / Speichern) auch in mehreren Ansichten auf breiterer Ebene zu funktionieren.
Niall
4
Wow, ich kann nicht glauben, dass es eine Abkürzung dafür gibt, wie seltsam spezifisch. Vielen Dank!
Ezekiel Victor
1
@MateuszSzlosek, Scheint bei mir nicht zu funktionieren. cmdshiftG kann die versteckte Datei nicht auswählen, es sei denn, ich mache zuerst einen cmdshiftdot. Es funktioniert bei dir
Pacerier
2
Ah, ich verstehe, was du meinst. Also Ja CMD + UMSCHALT + G wählt keine versteckte Datei aus, es sei denn, Sie zeigen sie mit CMD + UMSCHALT + an. Sie können jedoch weiterhin mit CMD + UMSCHALT + G zu ausgeblendeten Ordnern navigieren, ohne diese aufzudecken. Guter Punkt!
Mateusz Szlosek
23

Mateusz Szlosek deckte den ersten Teil ab. Im Folgenden wird beschrieben, wie ich den zweiten Teil für meinen eigenen Gebrauch behandelt habe.

In meiner Eile, meine Antwort zu posten, wusste ich nicht, dass der zweite Teil bereits beantwortet wurde. Siehe So legen Sie ⌘ + H fest, um die Anzeige ausgeblendeter Dateien zu aktivieren . Was ich im Folgenden anbiete, unterscheidet sich durch einen Dialog, der Sie über den aktuellen Status informiert.

Ich habe einen Dienst mit der Automator-Anwendung erstellt. Wenn ich die Anzeige versteckter Dateien umschalten möchte, wähle ich "Versteckte Dateien umschalten" aus dem Untermenü der Finder-Dienste, wie unten gezeigt. (Hinweis: Klicken Sie auf das Bild für eine bessere Ansicht.)

Dies führt dazu, dass eines der unten gezeigten Popups angezeigt wird.

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Die Schritte zum Erstellen des Dienstes sind nachfolgend aufgeführt.

  1. Öffnen Sie den Automator und wählen Sie ein neues Dokument vom Typ Service aus.
  2. Ziehen Sie die Aktion "Shell-Skript ausführen" in den Workflow-Bereich.
  3. Bearbeiten Sie die enthaltenen Elemente so, dass sie wie unten dargestellt angezeigt werden. (Hinweis: Klicken Sie auf das Bild für eine bessere Ansicht.)

    Der Text für das Skript wird unten wiederholt.

    STATUS=`defaults read com.apple.finder AppleShowAllFiles 2>/dev/null`
    if [ "$STATUS" == TRUE ]; then
        STATUS=`osascript -e 'tell app "Finder" to display alert "Finder is showing hidden files." buttons {"Cancel", "Hide"}'`
    else
        STATUS=`osascript -e 'tell app "Finder" to display alert "Finder is not showing hidden files." buttons {"Cancel", "Show"}'`
    fi
    if [ "$STATUS" == "button returned:Show" ]; then
        defaults write com.apple.finder AppleShowAllFiles TRUE
        killall Finder
    elif [ "$STATUS" == "button returned:Hide" ]; then
        defaults write com.apple.finder AppleShowAllFiles FALSE
        killall Finder
    fi
    
  4. Speichern (oder verschieben) Sie die Toggle Hidden Files.workflowDatei in den ~/Library/ServicesOrdner.
  5. Möglicherweise müssen Sie die Finder-Anwendung neu starten, damit der Dienst in einem Menü angezeigt wird.

Update 1

Aufbauend auf der Mateusz Szlosek Antwort sehe ich die Tastenkombination ⌘ CMD+ ⇧ SHIFT+ .für meinen Dienst hinzugefügt werden könnte. Gehen Sie zu den Systemeinstellungen und klicken Sie auf das Tastatursymbol. Wählen Sie "Dienste" und dann "Versteckte Dateien umschalten" unter der Überschrift "Allgemein". Ersetzen Sie "none" durch die Tastenkombination ⌘ CMD+ ⇧ SHIFT+ ..

David Anderson
quelle
Ich habe genau das getan, was Sie gesagt haben (die Datei befindet sich in meinem Ordner ~ / Library / Services), aber auch nach dem Neustart des Computers ohne Erfolg.
Walter
@Walter: Ich habe das Toggle Hidden Files.workflowzu Sourceforge.net hinzugefügt . Siehe Website: Versteckte Dateien umschalten . Sie können den Workflow von dort herunterladen. Die Installationsanweisungen finden Sie auch auf dieser Site.
David Anderson
Warum sollte die integrierte Tastenkombination, die in Dateidialogen verwendet wird, in einen Dienst geändert werden, der dies nicht tut und den Finder beendet? (Das Verlassen des Finders kann dazu führen, dass das Finder-Fenster im Vordergrund geschlossen wird.)
benwiggy
3

HAFTUNGSAUSSCHLUSS / WARNUNG

Versteckte Dateien sind normalerweise aus einem bestimmten Grund versteckt. Verwenden Sie das folgende Skript nur, wenn Sie sicher sind, dass Sie wissen, was Sie tun. Mit anderen Worten: Wenn Sie Ihr System beschädigen, indem Sie versteckte Dateien nach dem Zufallsprinzip löschen, ist dies Ihre eigene Schuld.


Hier ist das Skript, das ich verwende, um versteckte Dateien im Finder anzuzeigen / nicht anzuzeigen .

(Die native OSX-Verknüpfung zum Umschalten versteckter Dateien in Dialogfeldern zum Öffnen / Speichern wurde von Mateusz Szlosek bereits oben erwähnt.)

Der Unterschied zwischen meinem Skript und anderen, den ich bisher gesehen habe:

Die meisten Skripte tun nichts anderes, nachdem sie Finder beendet haben. Normalerweise bedeutet dies, dass Sie zurück zu dem Ordner navigieren müssen, in dem Sie sich ursprünglich befunden haben, da der automatische Neustart des Finders Ihren zuletzt aktiven Ordner nicht zuverlässig öffnet.

Das folgende Skript öffnet stattdessen Ihren letzten aktiven Ordner erneut und konzentriert sich darauf, dh den Ordner, in dem Sie sich befanden, als Sie die Umschalttaste verwendet haben, aber jetzt ausgeblendete Dateien anzeigen (oder nicht anzeigen).

Ich habe ihm eine Verknüpfung zugewiesen (cmd + shift +.) Und finde es jetzt viel bequemer, mit versteckten Dateien im Finder zu arbeiten.

Dank an Tetsujin, der vor einiger Zeit ein Skript auf dieser Site gepostet hat, das ich angepasst habe, um die Funktionalität zum erneuten Öffnen des letzten Ordners hinzuzufügen.

on run {input, parameters}
    tell application "Finder"
        set var1 to POSIX path of (target of window 1 as alias)
    end tell
    set newHiddenVisiblesState to "YES"
    set oldHiddenVisiblesState to do shell script "defaults read com.apple.finder AppleShowAllFiles"
    if oldHiddenVisiblesState is in {"1", "YES"} then
        set newHiddenVisiblesState to "NO"
    end if
    do shell script "defaults write com.apple.finder AppleShowAllFiles " & newHiddenVisiblesState
    ---- Sleep hack mentioned below. 0.5s minimum, 1-2s safer. Ugly, but (probably) unavoidable.
    do shell script "killall Finder; sleep 0.5s"
    tell application "Finder"
        ---- Close other windows if Finder managed to relaunch already
        if application "Finder" is running then
            close every window
        end if
        open (var1 as POSIX file)
        activate
    end tell
end run

So verwenden Sie das Skript: Öffnen Sie einen neuen Workflow in Automator, ziehen Sie "AppleScript ausführen", kopieren Sie den obigen Code und fügen Sie ihn in Ihren Dienstordner ein (normalerweise ~ / Library / Services /, afaik).

Das Anhängen einer Verknüpfung zum Ausführen eines Skripts sollte an einer anderen Stelle auf dieser Site behandelt werden. Ich habe den Bereich meiner Verknüpfung auf Finder beschränkt.


Stil bemerkung:

Ich muss auf einen hässlichen Hack zurückgreifen, indem ich "sleep" benutze, nachdem ich Finder beendet habe, bevor ich den Originalordner manuell öffne.

Wenn ich diese Verzögerung nicht erzwinge, hat OSX Finder möglicherweise bereits neu gestartet und einen Ordner geöffnet (meiner Erfahrung nach nicht unbedingt den zuletzt aktiven Ordner). Zusammen mit meinem eigenen "open" -Befehl kann dies dazu führen, dass zwei (unkillable, even) Finder-Prozesse ausgeführt werden und Finder überhaupt nicht mehr funktioniert. In diesem Fall wird das Problem durch Abmelden und erneutes Anmelden behoben, aber es ist offensichtlich Zeitverschwendung. Daher verwende ich "Schlaf".

Ein Schlafwert von 0,5 s funktioniert für mich, aber um auf der sicheren Seite zu sein, können Sie ihn leicht erhöhen (was den Prozess dann spürbarer verzögert).

Wenn jemand eine Möglichkeit kennt, den Finder-Relaunch und das unzuverlässige Öffnen eines Fensters nach dem Senden des Killall-Signals zu unterdrücken, oder eine andere Möglichkeit, den "Sleep" -Hack loszuwerden, würde ich mich freuen, das zu hören!

Bert Zangle
quelle