「.DS_Store」「_notes」を削除&定期的に削除する方法!

  • 公開日2024/12/21
  • HowTo

「.DS_Store」「_notes」まじで邪魔!と思われた方、結構おられますよね?おそらく。Macの人なら特に。

サーバーにファイルをアップする作業をしていて『1つしかファイルないはずなのに、3つもある?しかもフォルダもできてる??』と、気になり出すともう邪魔で邪魔で仕方ないがない。見た目にもパッと見でファイルが探せないので、作業効率が非常に悪い。この青の選択部分、全部不要ファイルなんですよね。。

「.DS_Store」「_notes」を削除&定期的に削除する方法!01

今までは作業しているファイルをサーバーにアップする際、この「.DS_Store」「_notes」を見つけ次第削除していたのですが、もうほんと『邪魔でしゃーない。。』

ってことでなんとかならないものかと調べたところ、「.DS_Store」「_notes」を削除&定期的に削除する方法があったので、今回はそれについてです。

「.DS_Store」「_notes」について

まず、「.DS_Store」「_notes」について。削除していいの?そもそもこれってなに?って思いますよね?

ってことで調べてみたところ、以下のようなものだとわかりました。

「.DS_Store」

macOS のFinder(Macのファイル管理システム)が、ディレクトリ情報を保存するために生成するメタデータファイルで、基本的にこれは消して問題ありません。

ですが、フォルダ内のカスタム表示設定などが含まれている場合があるので、その設定を使ってる方や気になる方は残しておいてくださいね。

「_notes」

主に Adobe Dreamweaver(DW)などの開発ツールが生成するファイルで、ファイルやプロジェクトの管理情報を格納しています。これはMacだけでなく、Windowsでも作成されます。

ですが、ウェブサイトの実行には必要ないものなので、こちらも消しても問題はないのですが、管理情報を含むため、再度作業する際に自動的に生成される可能性があります。

そんなわけでまずは削除する方法です。

「.DS_Store」「_notes」を削除する方法(ターミナル)

これはターミナルを使ってコマンドを実行しますので、

この作業はターミナルを使ってコマンドを実行しますので、使ったことない方、自信がない方は、バックアップをとってから、慎重に行ってくださいね。
ターミナルアイコン

「.DS_Store」「_notes」を削除する方法

  1. ターミナルを開きます。
    (アプリケーション/ユーティリティ/ターミナル)
  2. 対象ディレクトリに移動するコマンドを入力します。

        cd 削除したいフォルダのpath/to/your/directory
        
        例:外部ディスクでも可能
        cd /Volumes/website\ HD/\ あくまで例です web/XSERVER/〇〇.jp
        

    このディレクトリーは、cdの後にドロップ&ドラッグで自動的に入力されてくれますが、ご不安な方はきちんと入力してくださいね。
    ちなみに、エイリアスファイルをドラッグしてみたらできませんでしたので、エイリアスはNGです。

  3. コマンドを実行します。

        find . -name ".DS_Store" -delete
        
        find . -name "_notes" -delete
        

    まとめて削除もOKです。

        find . -name ".DS_Store" -delete
        find . -name "_notes" -delete
        

    まとめて1行で削除する場合は「;」をつけてください。

        find . -name ".DS_Store" -delete; find . -name "_notes" -delete
        

これで削除されてくれます。めっちゃスッキリ。

「.DS_Store」「_notes」を削除&定期的に削除する方法!02 削除後

「.DS_Store」「_notes」を削除する方法(Automator)

先ほどの方法はターミナルをいちいち出して、コマンドを入力して等、慣れてる方はいいかもですが、慣れてない方にとってはちょっと大変。。見つけた時にまとめて簡単に、右クリックとかで消せたら楽ですよね。

ってことで、Automatorに登録して、見つけて気になったタイミングで、右クリックで簡単に削除する方法です。これが現実的な方法かも。設定は大変ですが、一度登録するとかなり便利です。

「Automator」のクイックアクションを作成する

1. 「Automator」を起動→「クイックアクション」を選択する

まずは「Automator」を起動し、

「.DS_Store」「_notes」を削除する方法(Automator)1

メニューバーの

ファイル/新規 (or ショートカット:command+N)

から「クイックアクション」を選択します。

「.DS_Store」「_notes」を削除する方法(Automator)2

2. 「ワークフロー」を作成する

『ワークフローが受け取る現在の項目』と書いてある項目から「ファイルまたはフォルダ」を選択し、『検索対象』からは「Finder」を選択し、

『ここにアクションまたはファイルをドラッグしてください。』と書いてあるスペースに、左の項目から「シェルスクリプトを実行」を選択して(「シェル」で検索したらすぐ出てきます)サービスを選択(ドラッグ)します。

「.DS_Store」「_notes」を削除する方法(Automator)4

ここのスクリプトを入力する欄に、

「.DS_Store」「_notes」を削除する方法(Automator)5

以下を入力します。

#!/bin/bash
# 外部ディスクの「.DS_Store」と「_notes」を削除するスクリプト

#「.DS_Store」を削除するスクリプト
find "/Volumes/ここでは外部ディスクを選択してます/選択するフォルダ名" -name ".DS_Store" -delete
echo ".DS_Store の削除が完了しました。"

#「_notes」を削除するスクリプト:フォルダなので↑と同じにしたら削除されないので、記述は↓に変更
find "/Volumes/ここでは外部ディスクを選択してます/選択するフォルダ名" -type d -name "_notes" -exec rm -rf {} \;
echo "_notes フォルダの削除が完了しました。"

ここでは外部ディスクを選択してますが、削除したいフォルダなりディスクは、適宜変更してください。

あとコメントアウト部分は好きに変更してくださいね。echo部分もターミナル作業ではないのでいらないかもですね。チェックしたい方のみここは残しておいてください。

あとは名前をつけて保存すれば設定は完了です!
今回は『「.DS_Store」「_notes」を削除』と言う名前にしてますが、適宜わかりやすい名前に変更してください。

3. 「削除」する

「_notes」が邪魔!と感じるくらい出てきたら(「.DS_Store」はFinderではでてきません。)、右クリックでクイックアクションで『「.DS_Store」「_notes」を削除』を選択します。

「.DS_Store」「_notes」を削除する方法(Automator)6

あとは勝手に削除してくれます!

ちなみにAutomatorの使い方については『MacでAutomatorのクイックアクションで楽をする!pngをjpgに!画像の種類・サイズ・名前の変更・統一、作成したアクションの編集・削除も!』に詳細があります。別サイトですが、移動するの大変なのでこちらにて。

「.DS_Store」「_notes」を毎晩深夜(0:00)に自動削除する方法

この「.DS_Store」「_notes」は、一回削除しても、作業をするとまた作成されてしまいます。

そのため、いろんなフォルダで作業をたくさんしている開発中は、ゾンビのように消しても消しても出てきてしまいます。。

ですので、定期的に自動で削除するスクリプトファイルを作って実行し、削除させる方法も書いておきます。

以下は毎晩深夜(0:00)に削除作業をするスクリプトを実行させて消す方法です。

(この方法は、外部ディスクで何度も試してたのですが、権限の問題でできなかったので外部ディスク想定の方は参考まで。)

内臓ディスク用:毎晩深夜(0:00)に自動削除する方法

  1. ターミナルを開きます。
  2. 対象ディレクトリに移動するコマンドを入力します。

        cd 削除したいフォルダのpath/to/your/directory
        
  3. スクリプト作成と crontab 設定します。

    3-1.スクリプトファイルの作成します。

        # remove_temp_files.sh を作成
        nano remove_temp_files.sh
        

    以下のような状態になりnanoエディタが開きます。
    「.DS_Store」「_notes」を削除&定期的に削除する方法!03

    3-2.ここにスクリプトの内容を入力します。

        #!/bin/bash
        #「.DS_Store」と「_notes」を削除するスクリプト
        find ~/ -name ".DS_Store" -delete
        find ~/ -name "_notes" -delete
        

    「.DS_Store」「_notes」を削除&定期的に削除する方法!04

    3-3.保存して nano を終了します。
    ・ 「Ctrl + X」で保存して終了。
    ・ 「Y」で保存を確定。
    ・ 「Enter」でファイル名を確認。

  4. スクリプトに実行権限を付与します。

        chmod +x remove_temp_files.sh
        
  5. crontab を使用して定期実行する設定

        crontab -e
        
  6. crontab の内容を編集
    毎日深夜にスクリプトを実行するように、次の行を追加します。

        0 0 * * * /Scriptが入ったフォルダpath/の中の/remove_temp_files.sh
        

    エディタを保存して終了。

これで、指定したフォルダ以下の「.DS_Store」と「_notes」ファイルを削除するスクリプトが毎晩0時に実行されるようになります。

これでゾンビのように、消しても消しても出てくる「.DS_Store」「_notes」のファイルに遭遇する回数は減るはず。

っていうか、、、隠しファイルにでもしといてくれよ。ほんま邪魔でしゃーない。。。

外部ディスク用:毎晩深夜(0:00)に自動削除する方法

上記の方法では、内臓ディスクで作業していて、そこのファイルを削除するには問題ありませんが、外部ディスクで作業してる場合には、権限がなくエラーで保存できません。。

また、以下の方法だけでなく、他の方法も色々試行錯誤して試したのですが、今の所できていません。
というわけで以下の方法は参考まで。

  1. ターミナルを開きます。
  2. 「scripts」フォルダを書類フォルダに作成します。

        mkdir -p ~/Documents/scripts
        
  3. 「scripts」フォルダに移動します。

        cd ~/Documents/scripts
        
  4. スクリプトファイルの作成します。

        nano remove_temp_files.sh
        
  5. スクリプトの内容を、nanoエディタに入力し、保存します。

        #!/bin/bash
        # .DS_Store ファイルを削除するスクリプト
        find /Volumes/該当のフォルダ\ web -name ".DS_Store" -delete
        # _notes ファイルを削除するスクリプト
        find /Volumes/該当のフォルダ\ web -name "_notes" -delete
        

    ここでは、外付けSSDのwebフォルダを対象にしました。

    入力が終わったら、保存して nano を終了します。
    ・ 「Ctrl + X」で保存して終了。
    ・ 「Y」で保存を確定。
    ・ 「Enter」でファイル名を確認。

  6. スクリプトに実行権限を付与します。

        chmod +x remove_temp_files.sh
        
  7. crontab を使用して定期実行する設定

        crontab -e
        
  8. crontab の内容を編集
    毎日深夜にスクリプトを実行するように、次の行を追加します。

        0 0 * * * /Scriptが入ったフォルダpath/の中の/remove_temp_files.sh
        

    エディタを保存して終了。

追記

毎晩深夜の0:00に実行設定してますが、その時スリープ中やクローズ状態の場合は、「crontab」タスクは実行されません。

ですので、0:00にスリープ中だった等でスルーされた場合は、そのタスクは次の日の0:00まで実行されないので、気になる方は絶対パソコン動いてる時に設定してくださいね。

Google AdS



関連記事

WindowsのSafariで【background】が効かない時の原因と対処方法


最近cssではショートハンドを使って記述するのが当たり前になってきたので(ショートハンドの詳細はこちら)、今回トラブルと…

記事を読む▷


日付を自動更新する!!2 サムネイル

日付を自動更新で表示させる! 簡単コピペ その2!


以前『日付を自動更新で表示させる! 簡単コピペ!!』を書いたのですが、その時の方法はJaveScriptで『docume…

記事を読む▷


『reCAPTCHA v3』を問い合わせページのみ&左側に表示させる方法:その2


前回書いた『reCAPTCHA v3』を問い合わせページのみ&左側に表示させる方法:その1の続きです! 今…

記事を読む▷


右下のreCAPTCHA

『reCAPTCHA v3』を2ページ以上表示させる時の方法(問い合わせ+α・固定ページ・投稿ページetc..)


以前『reCAPTCHA v3』を問い合わせページのみ&左側に表示させる方法:その2を書いた時は、問い合わせページにのみ…

記事を読む▷


Google Analyticsに設定する『グローバルIPアドレス』を確認&取得する方法


で「自分のアクセスを除外」するフィルタを設定し、自分のアクセスはカウントしないようにしていたのですが、ある修正作業をして…

記事を読む▷


Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Google AdS

  • 人気の記事

新着記事