年末の大掃除は、平安時代の宮中行事に起源を持つ煤払いなどから広まったそうだが、地域によって”ええことはじめ”などとも呼ばれるそうで、清々しい新年を迎えるための準備行事でもある。そう考えると、侮れない大仕事だ。
書類や書物から型落ちした物品の数々。整理しなければいけないと思いカラーボックスや小物入れを時折買ったりするが、いつしかこれらが使わずにして邪魔になるほど。結局、部屋のなかのCognitive Load(認知負荷)を引き起こす。なにかをはじめようとするとなにかを探さなければならないので、行動に伴う時間はもとよりモチベーションも低下する。やはり、大量にある不要なものを捨てた上で整理整頓し、再構築して新年を迎えたいものである。昔ながらのよい伝統だ。
デジタル領域でも大掃除が必要なようだ。筆者の場合、駄目な作法とわかりつつ視認性がもっとも高いデスクトップにファイルやフォルダが蓄積されてしまう・・・Windowsのスクリプトによる取り回しにはPowerShellが良さそうということで、先日Windowsターミナルに実装したAIShellを使って片付けてみることにした。
削除をともなう重要な処理を生成AIで試すときには注意が必要だ。ためしに”PowerShellでデスクトップ上のファイル・フォルダをZIP圧縮してDドライブにバックアップ”とプロセスを連続させて生成したコードでは圧縮と削除のタイミングが合わずバックアップファイルが消えてしまった。ランサムウェアが猛威を振るう昨今、職場のデータには機能の豊富なソリューションやOS機能を活用したバックアップ/復帰環境が備わっていると思うが、個人ユースでもバックアップは昔ながらの大切な伝統でもある。しっかりと、1バックアップファイルの作成保存 2ファイルフォルダの削除 にわけて生成したほうがよいだろう。まずバックアップ先はDドライブ直下、保存ファイル名は西暦日付とBackUpDesktopをファイル名。こうしておけばいつでも探し出せる。
まずは圧縮バックアップをAIで作成
Start-AIShellでサイドにOpenAIGPTエージェントを呼び出し、まずはバックアップを作る。
PowerShellでデスクトップ上のファイルやフォルダを圧縮し、バックアップとしてDドライブ直下に本日の西暦日付 BackUpのファイル名で保存。
と入力すると生成されるコードをそのまま、/code postするとPowerShellに自動でポストする。
これを実行するとぞっとするエラーが。 しかし、PowerShell上Resolve-Errorとだけ入力するとエラーの解析がOpenAIGPTエージェント側に伝わり、解説と修正コードを示してくれる。
$source = [Environment]::GetFolderPath('Desktop'); $destination = "D:\$((Get-Date).ToString('yyyyMMdd'))_BackUp.zip"; Add-Type -A 'System.IO.Compression.FileSystem'; [IO.Compression.ZipFile]::CreateFromDirectory($source, $destination)
再度修正されたコードを実行するとエラーが表示されず、無事に実行された。
Dドライブ直下には、西暦日付入りのBackUp.zipファイルが生成されており、バックアップファイルが移動できている。
デスクトップファイルの削除
あとはデスクトップ上のファイルを削除するだけ。ショートカットファイルは残しておきたいので