[ファイルを開く]ダイアログに隠しファイルとフォルダーを表示するホットキー


262

この質問は「開く/保存」ダイアログで常に非表示/ドットファイルを表示できますか?ファインダーに隠しファイルとフォルダーを表示する方法は?関連しています。しかし、私はしていない、常にそれらを表示したい、それが何defaults write ... AppleShowAllFiles ...ありません。

むしろ、必要なときにスイッチを入れたいです。私が開こうとしている.bash_profileので、今それが必要です:

ここに画像の説明を入力してください

LinuxとGnomeのは、に私たちを許すCTRL+ H隠しファイルを表示と非表示を切り替えること。ただし、GnomeホットキーはOS Xでは機能しません(これは予想されています)。

完全を.bash_profile期すために、ホームディレクトリに存在します。

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

関連する質問...上記のように、Finder(またはSpotlight)の検索でファイル名を入力しても機能しませんでした。「すべてのファイルを表示」などのボックスをチェックすることを期待して、ファイルを開くダイアログで右クリックしてコンテキストメニューを取得しようとしました。そして、[ファイルを開く]ダイアログを開いた状態で[すべてのファイルを表示]を探す[表示]メニューを試しました。

なぜこれがどこかに隠されているのですか?ユーザーがファイルを簡単に開けないようにするためにどのような目的がありますか?

回答:


452

⌘ CMD+ ⇧ SHIFT+ .は、Finderおよび[開く] / [保存]ダイアログに隠しファイルを表示します。

あなたはAZERTYキーボードを使用している場合は、押す必要がありますfnので、あまりにも⇧ SHIFTあなたが既に作ってそれを必要とするよう考慮されています.


ターミナルの場合と同様に、⌘ CMD+ ⇧ SHIFT+ Gを押して隠しフォルダーへのパスを入力することもできます(⇥ TABオートコンプリートも機能します)。

隠しファイルの編集は、何をしているのかわからない場合は危険です。


7
パスを変更する-別のドライブに移動して再び戻るなど-またはビューをアイコンに変更して戻ると、列ビューで機能します。
鉄人

10
キーボードショートカット「cmd + shift +」。SierraのFinder(Open / Saveダイアログだけでなく)でも、いくつかのビューでより広範囲に機能するようです。
ニール

4
うわー、これに近道があるなんて信じられない。ありがとう!
エゼキエルビクター

1
@MateuszSzlosek、私にはうまくいかないようです。最初にcmdshiftdotを実行しない限り、cmdshiftGは隠しファイルを選択できません。それはあなたのために働きますか?
パセリエ

2
ああ、私はあなたが意味するものを得る。はい。CMD+ SHIFT + Gを使用して隠しファイルを表示しない限り、CMD + SHIFT + Gは隠しファイルを選択しません。ただし、CMD + SHIFT + Gを使用すると、非表示フォルダーを表示せずにナビゲートできます。いい視点ね!
マテウスシュロセク

23

Mateusz Szlosekが最初の部分をカバーしました。以下は、私自身の使用のために2番目の部分をどのように処理したかです。

私の回答を急いで投稿しましたが、2番目の部分がすでに回答されていることに気付きませんでした。隠しファイルの表示を有効にするには、⌘+ Hを設定する方法をご覧ください。以下に提供するものは、現在のステータスを通知するダイアログによって異なります。

Automatorアプリケーションを使用してサービスを作成しました。隠しファイルの表示を切り替えるには、以下に示すように、Finderサービスのサブメニューから「隠しファイルの切り替え」を選択します。(ヒント:画像をクリックすると、見やすくなります。)

これにより、以下に示すポップが表示されます。

ここに画像の説明を入力してください

ここに画像の説明を入力してください

サービスを作成する手順を以下に示します。

  1. Automatorを開き、Serviceタイプの新しいドキュメントを選択します。
  2. アクション「シェルスクリプトの実行」をワークフローペインにドラッグします。
  3. 以下に示すように、含まれる内容を編集します。(ヒント:画像をクリックすると、見やすくなります。)

    スクリプトのテキストを以下に繰り返します。

    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. Toggle Hidden Files.workflowファイルを~/Library/Servicesフォルダーに保存(または移動)し ます。
  5. サービスをメニューに表示するには、Finderアプリケーションを再起動する必要がある場合があります。

アップデート1

Mateusz Szlosekの答えを基に、キーボードショートカット⌘ CMD+ ⇧ SHIFT+ .がサービスに追加される可能性があります。[システム環境設定]に移動し、[キーボード]アイコンをクリックします。[全般]見出しの下にある[サービス]、[隠しファイルの切り替え]の順に選択します。「none」を⌘ CMD+ ⇧ SHIFT+ .キーボードショートカットに置き換えます。


私はあなたが言った通りにした(私の〜/ Library / Servicesフォルダーにファイルがあると言われている)が、コンピューターを再起動した後でも役に立たなかった。
ウォルター

@Walter:Toggle Hidden Files.workflowSourceforge.netに追加しました。Toggle Hidden Filesのサイトをご覧ください。そこからワークフローをダウンロードできます。インストールの手順もこのサイトに表示されます。
デビッドアンダーソン

なぜファイルダイアログで機能するビルトインキーショートカットをサービスに変更し、サービスは機能せず、Finderを終了しますか?(Finderを終了すると、前景のFinderウィンドウが閉じる場合があります。)
benwiggy

3

免責事項/警告

通常、非表示のファイルは非表示になっています。以下のスクリプトは、自分が何をしているかを十分に理解している場合にのみ使用してください。つまり、隠しファイルをランダムに削除してシステムを破壊した場合、それはあなた自身の責任です。


Finder内の隠しファイルの表示/非表示を切り替えるために使用するスクリプトを次に示します。

オープン/保存ダイアログで隠しファイルを切り替えるOSXネイティブショートカットは、すでに上記のMateusz Szlosekによって言及されました)

私のスクリプトと私が今まで見た他のスクリプトとの違い:

ほとんどのスクリプトは、Finderを終了した後、他に何もしません。通常、自動Finderの再起動では最後のアクティブフォルダーが確実に開かれないため、元のフォルダーに戻る必要があります。

代わりに、以下のスクリプトは、最後にアクティブになったフォルダー、つまりトグルを使用していたが隠しファイルを表示する(または表示しない)フォルダーに再び開き、フォーカスを当てます。

ショートカット(cmd + shift +。)を割り当てたので、Finderで隠しファイルを操作する方がずっと便利になりました。

私が「最後のフォルダーを再度開く」機能を追加するようになったのは、少し前にこのサイトにスクリプトを投稿したTetsujinの功績です。

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

スクリプトを使用するには:Automatorで新しいワークフローを開き、「Run AppleScript」にドラッグし、上記のコードをコピーして貼り付け、サービスフォルダー(通常は〜/ Library / Services /、afaik)に保存します。

スクリプトを実行するためのショートカットの添付については、このサイトの別の場所で説明する必要があります。ショートカットの範囲をFinderのみに限定しました。


スタイルリマーク:

元のフォルダを手動で開く前に、Finderを殺した後「スリープ」を使用して、少しいハックに頼らなければなりません。

この遅延を強制しないと、OSXが既にFinderを再起動し、フォルダーを開く可能性があります(私の経験では、必ずしも最後のアクティブなフォルダーとは限りません)。私自身の「開く」コマンドと一緒に、これは2つの(殺せない、偶数の)Finderプロセスが実行され、Finderがまったく動作しなくなるという厄介な影響をもたらす可能性があります。これが発生した場合、ログアウトして再度ログインすると修正されますが、明らかに時間の無駄なので、「スリープ」を使用します。

スリープ値は0.5秒ですが、安全のために、少し大きくすることができます(その場合、プロセスにより顕著な遅延が追加されます)。

誰かがFinderの再起動を抑制し、killallシグナルを送信した後にウィンドウを信頼できない方法で開く方法、または「スリープ」ハックを取り除く他の方法を知っているなら、それを聞いてうれしいです!

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.