「Windows 10ミニTips」は各回の作成時点で最新のWindows 10環境を使用しています。
「desktop.ini」は、デスクトップの表示方法に関する情報を記録するファイルだ。Windows 10 バージョン20H2(Windows 10 October 2020 Update)の登場で気になったのが、desktop.iniの扱い。desktop.iniはシステムファイルと隠しファイルの属性を付与されており、標準状態のWindows 10では見えない。設定を変えて見えるようにして、desktop.iniの内容を編集すると、フォルダーのアイコンや名称を変更できる。
筆者は、日本語フォルダーよりも英語フォルダーの方が直感的との理由から、desktop.iniをいじって一部フォルダーを英語表示させている。以前「『desktop.ini』は削除しても大丈夫?」でも手順を紹介したが、今回は自動実行するバッチファイルを作成してみた。
今回は「3Dオブジェクト」「ダウンロード」「ピクチャ」「ミュージック」「ドキュメント」「ビデオ」、以上6フォルダーの日本語化を解除する。「デスクトップ」が含まれていないのは、筆者が同フォルダー用desktop.iniを削除する習慣を持つためだ。
rem Desktop.iniの「LocalizedResourceName」を自動削除
@echo off
cd %USERPROFILE%
for /d %%d in ("3D Objects" Downloads Documents Pictures Music Videos) do (
cd %%d
if exist Desktop.ini (
type desktop.ini | findstr /V LocalizedResourceName > tmp1.txt
powershell.exe "Get-Content tmp1.txt > tmp2.txt"
attrib -S -H desktop.ini
move /Y tmp2.txt desktop.ini
attrib +S +H desktop.ini
del tmp1.txt
) else (
echo Desktop.iniが%%dで見つかりません.
)
cd %USERPROFILE%
)
バッチファイルは各フォルダーでdesktop.iniファイルが存在するか確認し、LocalizedResourceNameの記述がある行を削除して一時ファイルを作成する。
続いてWindows PowerShellのコマンドレットが登場するのは、コマンドプロンプト環境だけでは、文字コードの扱いがうまくいかなかった。後はdesktop.iniのファイル属性を外してから一時ファイルを上書きし、ファイル属性を再付与している。
本バッチファイルには欠点がある。それは各フォルダーを別ドライブなどに移動している場合は使用できない。また、OneDriveバックアップでドキュメントやピクチャフォルダーをOneDriveフォルダーに移動している場合も同様だ。この点だけ留意してほしい。