ファイルは更新日時順に並べて整理しよう

ファイル名に更新日時を付け足したり、新しい順にリスト化したりを自動化する

目的のファイルを探すとき、その検索方法は様々なものがあります。「ファイル名で探す」、「ファイルのサイズで探す」、「ファイルの種類で探す」…。

その中でも「ファイルの更新日時で探す」という探し方はかなり有効です。「一ヶ月前ぐらいに作ったから…」とか「昨日作ったはずだから…」という「いつ」という情報は、ファイル名を忘れても意外と思えているものだからです。

ここでは、複数のファイルを新しいもの順にリスト化する方法、そして同時にファイル名の先頭に更新日時をつけてファイルを保存し整理するパソコンの自動化方法をご紹介します。

 

こんな方に読んで欲しい
・更新日時からファイルを探す方法が知りたい人
・ファイル名の先頭にファイル更新日時の情報を自動で付け加えたい人
・複数のファイルを更新日時と併せてリスト化したい

 

【ここでは、こんな自動化ができる!を動画で説明】

 

細かいこと抜きでやりたい人へ

まずは、細かいことは抜きにして、とにかくどうやるかだけを説明しましょう。処理の対象となるいくつかのファイルが入ったフォルダを開きます。ここでは、下のようなフォルダ内で試してみたいと思います。

様々な種類のファイルが入っています。ここに、「ファイルを更新日時順に整理」という名前のフォルダを作成してください(下の図)。

この中に入って、「空きスペースを右クリック」→「新規作成」→「テキスト ドキュメント」を選択します。「新しいテキスト ドキュメント.txt」の名前を「自動ファイル整理_更新日時.bat」とでもしておきます。

続いて、「自動ファイル整理_更新日時.bat」を開き、下のコードをコピー&ペーストします。この拡張子が「.bat」となっているものをバッチファイルを呼び、Windowsパソコンの自動化には欠かせないものです。

保存して閉じれば、準備完了です。「自動ファイル整理_更新日時.bat」をダブルクリックしてみてください。

どうでしょうか?いくつか新しいファイルができたと思います。

よく見ると、一つ下の階層にあるフォルダ名の前に数字がくっ付いていることが分かるでしょう。この数字がそのファイルを最後に更新した日付になっています。例えば、ファイル名が、

20170409_第2回講義.odp
 

などとなっている場合、一つ下の階層フォルダにある「第2回講義.odp」ファイルを最後に更新したのは2017年4月9日ということです。この操作が、一つ下の階層フォルダにあるファイル全てについて行われているはずです。

次に、「ファイルリスト_更新日時順.txt」というファイルを見つけてください。この中を覗くと、下の図のようになっています。

ファイル名と更新日時がセットになって表示されています。そして、更新日時を確認すると上の方がより新しいファイルとなっているはずです。ファイルの新旧が一目で分かり、ファイルの検索がより便利になるでしょう。

自動ファイル整理_更新日時.batに書いた内容をちょっとだけ知りたい人へ

コピペした「自動ファイル整理_更新日時.bat」のバッチファイルコードについて、重要だと思う部分だけ解説したいと思います。詳しく説明しない部分についても、参考URLを随時載せていますので、完璧に理解したい人も必見です。

まず、初めの「@echo off」と3行目の「setlocal enabledelayedexpansion」については、「@echo offの意味」と「forループ内で値を変化させる」をご覧ください。

6行目では、「ファイルリスト_更新日時順.txt」を削除しています。「ファイルリスト_更新日時順.txt」はバッチファイルをダブルクリック(実行)して初めて作成されるものですが、複数回実行したときに、前のファイルが残っていると不具合が生じるため、「ファイルリスト_更新日時順.txt」がある場合はそのファイルを削除します(詳しくは、「ファイルが存在している場合にのみコマンドを実行する」を参照ください)。

9行目では、対象ファイルを一時的なファイル「file.list」に書き込んでいます。この「file.list」ファイルは31行目の「del」コマンドによって最終的には削除されます。

12行目から29行目までを「for」コマンドのループで繰り返し回していますが、これは「file.list」に書き込んだ対象ファイルのファイル名で回しています。このとき、ファイル名は「%%a」の中に格納されています(「for(繰り返し)」)。

さらに15行目から27行目も「for」コマンドが使われていますが、これはファイル名「%%a」から更新日時を取り出すためのものです。

16行目の「echo」コマンドは、更新日時とファイル名を「ファイルリスト_更新日時順.txt」ファイルに書き出している部分です。

20行目から25行目では、対象となった元のファイルを、名前の先頭に日付を加えたファイル名としてコピーしています。この部分は「日付フォーマットを「YYYYMMDD」へ変更する(例 2017/06/28 → 20170628)」が参考になるでしょう。

以上、簡単に説明しましたが、バッチファイルについて多少知識がないと難しかったかもしれません。バッチファイルは何でもできる万能なプログラムではありませんが、簡単な操作なら大抵ことはできるすごく使い勝手のよいプログラムです。しかもWindowsに初めから入っているため、「インストール要らず」という大きな特徴を持っています。プログラムの経験がない方でも気軽に始めることができますので、興味のあるかたはまず「バッチファイルでできること」を覗いてみてください。

終わりに

今回は、ファイルの更新日時に注目してファイル整理を自動化しました。この他にも「ファイルのサイズで整理する方法」や「ファイルの種類で整理する方法」など考えればたくさん思いつきます。

これらは今後少しずつ紹介していきたいと思います。

自動化プログラムの作成を依頼しませんか?

普段の面倒な単純作業を自動化しませんか?

幣サイトでは、Windowsパソコンの自動化プログラムの作成サービスを行っています。

本サービスの特徴は、

・安価な値段
・個人から法人までどなたでも対応
・お客様の要望を全力で実現

です。

安いからといって、決して手は抜きません。

まずは、下のボタンからWindowsパソコンの自動化プログラムの作成サービスの詳細をご確認ください。

    コメントを残す

    メールアドレスが公開されることはありません。

    日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)