以前、デスクトップに西暦日付フォルダを自動作成するPowerShellスクリプトを設置した筆者。"特定の規則で命名したフォルダを自動生成する"のは単純な所作のように思えるが、エントロピー増大を防止し、秩序状態を維持する行為でありながら自動化しているので、ユーザーのエネルギーは消費していない。これが相当に効いている。
外からエネルギーを加えない限り、すべてのものは"秩序がある状態"から"無秩序でバラバラな状態"へと進んでいくエントロピー増大の法則。持ち込まれる物質の量が増えると、可能性のある方向へと小さなゴミが部屋のなかに散らばる。物理世界では、これを防ぐために、毎回重い腰を上げゴミ箱へと移動させて、時には掃除することで状態を維持するわけだが、デスクトップの乱雑はちょっとした自動化メカニズムで防げるのがすばらしい。
忘れやすいWindows 11の特定場所をブックマーク化する
身の回りのカイゼンに俄然、好奇心を持った筆者は自身の日常に思いを馳せ、課題を考える。そうすると、特定のフォルダや機能を開くことに対して、いつも迷いが生じていることに気が付いた。
たとえば、Windowsのコントロールパネル。長いWindows使用のなかで、設定→コントロールパネルと刷り込まれているため、いまだにこれで探して"無い"と途方に暮れる。Win+Rで開く「ファイル名を指定して実行」にcontrolで開くようにしているが、似たような状況が特定の機能やフォルダ・ディレクトリなどに行く場合にもしばしば起こる。
先ごろ、PowerShellで動作する"超簡易ブックマーク"を構築してみたが、これを応用すればいろいろ便利になると考えた。bmコマンドは以下である。
function bm {
$bookmark = @(
"https://news.mynavi.jp"
"https://github.com/"
"https://google.co.jp"
)
for($i=0; $i -lt $bookmark.Count; $i++) {
Write-Host "$($i+1) : $($bookmark[$i])"
}
$choice = Read-Host "番号"
Start-Process $bookmark[$choice-1]
}
配列の中に入れて、forループで取り出す基本的なこの形。URLを指定しているので、実行するとユーザーの番号指定で目的のURLをブラウザで起動するがフォルダ・ディレクトリ、特定の機能を設定しておけば、ブックマーク的に扱える独自の手軽なファイラーのように扱えるとおもった。ファイルは、以前に作ったようにURLではなく、file:// で指定できる。
ユーザードキュメントやダウンロードフォルダなどは、頻繁に使うにも関わらず、ユーザー名が使用マシンによって異なるので頭に入りにくい。これらを入れてみる。Windows 11では、エクスプローラーで開いて、アイコンを右クリックすると"パスをコピー"メニューがあるので、これでパスをコピーしてズバズバ配列にいれていく。コントールパネルなどはMicrosoft公式WebサイトにあるKNOWNFOLDERIDからフォルダ名を探し出し設定してやる。新しく追加するbmfileコマンドは以下のようになる。
function bmfile {
$bmfile = @(
"C:\Users\●●●\Downloads"
"C:\Users\●●●\Documents"
"C:\Users\●●●\Pictures"
"C:\Users\●●●\Desktop"
"shell:ControlPanelFolder"
"shell:Startup"
"shell:SendTo"
"shell:Recent"
"shell:AppData"
)
for($i=0; $i -lt $bmfile.Count; $i++) {
Write-Host "$($i+1) : $($bmfile[$i])"
}
$choice = Read-Host "番号"
Start-Process $bmfile[$choice-1]
}
PowerShellでnotepad $PROFILEと入力すると、メモ帳で開かれる設定ファイルにコードを入力し、上書き保存。開いているPowerShellに反映させるために.$PROFILEと入力し、上記で設定した関数名bmfileを入力して実行すると
コントールパネルなどフォルダの名前は、概ねMicrosoft公式WebサイトにあるKNOWNFOLDERIDから探し出し設定できる。Win+Rから開いてみて、使えそうだと思ったらあらかじめ自身のローカルブックマークに設定してやると、使い勝手や知識も広がりそうである。


