ツリーコンテキストメニュー「新規フォルダ」
https://gyazo.com/d2af57b81e20b30fe76049e02ac04319
引数を引用符で囲ってはいけない。引用符は必要なときに自動でつくから。
code:mkdi.bat
@echo off
chcp 65001
set location=%~1
md "%location%\新しいフォルダ%date:~0,4%%date:~5,2%%date:~8,2%"
chcpでコードページを指定しているので、Unicode文字が通る。
過去ログ
2020-05-16
動くけれど、パスにUnicode文字が含まれていた場合はだめ。
https://gyazo.com/3b42a1d8394d4ebb53481c19468481e7
code:mkdi.bat
set location=%~1
md "%location%\新しいフォルダ%date:~0,4%%date:~5,2%%date:~8,2%"
動くけれど、TreeSelectedにUnicode文字が含まれていると動作しない!!
だれかたすけて!(できればバッチファイルではなく、べつのスクリプト言語で書きたいけど書き方がわからない。)
(追記 これは古いバージョンのWindowsの話です:)
バッチファイルの文字コードはシフトJIS(932) だけでなく例えば、EUC-JP(20932) も可能です。しかし、Unicode(1200)、UTF-7(65000)、UTF-8(65001)、JIS(50220) はダメです。
これらコードページのバッチファイル可否は、%SystemRoot%System32\C_コードページ.NLS の有無によるようです。
もし、chcp 65001などでコンソールのコードページをUTF-7(65000)、UTF-8(65001)、JIS(50220)に変えると、バッチファイルが全く実行できなくなります。
また、これらのコードページでは、単にバッチファイルが実行できなくなるだけでなく、TYPE コマンドを除いて、ファイルの読み書きが全くできなくなるようです。
これはたぶん、ファイルの読み書きでは、C_コードページ.NLS を使用した文字コード変換が行なわれているせいです。