ダウンロードフォルダにおける反復作業
SaaSを使うことも多い昨今、ブラウザでファイルをダウンロードすることも多くなる。朝から結構な数のJPGやPDFファイルをダウンロードしなければならない日であったのだが、これを作業用として設定している西暦日付フォルダ(20260825)に移動させる。よくよく振り返ると、なんとも反復の多い作業をしている。
・ブラウザのダウンロードからフォルダ(Downloads)を表示
・ファイルを西暦日付フォルダに移動
・ダウンロードフォルダの画像を消去
を知らずに繰り返している。数枚のファイルでは気にすることもなかったが、多めのファイルを移動させているとさすがにその無駄に気が付いた。
この手の無駄は、積み重なるとイライラの元になりがちだが、"課題視点"で見ると違ってくる。先日、部屋に設置してある"突っ張り棒"にさらに1本平行追加するというアイデアをひねり出して実践してみたところ、突っ張り棒の上部にさらなる設置スペースを増設するという荒技に成功した。その快適さはコストを上回るものだったが、PC上のPowerShellスクリプトでは、コストもかからない。
日付フォルダにmv(Move-Item)するコマンドを作成
筆者の環境では、ブラウザからダウンロードするとユーザー/Downloadsフォルダに保存されることが多い。OutlookやGmailなどメールでの添付物をダウンロードした場合にもこのフォルダに集まる。Downloadsフォルダも乱雑に散らかった部屋と変わらない。当日のフォルダは自動生成される(記事)ため、mv(Move-Item)で作成済みの西暦日付フォルダに移動させればいいのであるから、その日の日付(Get-Date)をToString("yyyyMMdd")で同じ西暦日付の文字列にして移動先に設定するだけだ。
function mvdown
function mvdown {
$today = (Get-Date).ToString("yyyyMMdd")
mv "C:\Users\●●●\Downloads\*.*" "C:\Users\●●●\Desktop\$today"
}
これを実行すると
どの階層にいても、Downloadsフォルダ内のファイルをその日の西暦日付作業フォルダに移動してくれる。Downloadsフォルダには大量のファイルが溜まりやすいこともあるので、コマメに移動させることができるmvdownにも活躍を期待したいところだ。

