自動バックアップ用に7zipをセットアップしようとしていますが、出力ファイル名に問題があります。
%date%コマンドを使用してみましたが、バックアップ内に2つのディレクトリが作成されました。
C:\ Users \ Desktop \ Sun 11 \ 07 \ 2010.7z
日と月をログに記録するにはどうすればよいですか?
C:\ Users \ Desktop \ Sun 11-07-2010.7z
自動バックアップ用に7zipをセットアップしようとしていますが、出力ファイル名に問題があります。
%date%コマンドを使用してみましたが、バックアップ内に2つのディレクトリが作成されました。
C:\ Users \ Desktop \ Sun 11 \ 07 \ 2010.7z
日と月をログに記録するにはどうすればよいですか?
C:\ Users \ Desktop \ Sun 11-07-2010.7z
試す
7z a %DATE:~-4%-%DATE:~4,2%-%DATE:~7,2%.7z *.* for (YYYY-MM-DD)
また
7z a %DATE:~7,2%-%DATE:~4,2%-%DATE:~-4%.7z *.* for (DD-MM-YYYY)
(*。*は、バックアップするファイルのマスクです)
batファイルを使用していますか?ここを見てくださいhttp://www.tech-recipes.com/rx/956/windows-batch-file-bat-to-get-current-date-in-mmddyyyy-format/
WMIを使用して、特定の形式で日付の詳細を取得できます。date
(および環境変数)からの出力の問題%date%
は、それが非常にロケール固有であるということです。
実行する場合:
wmic path win32_localtime get day^,month^,year^ /format:csv
処理する必要のある出力が表示されます。
次のスクリプトは、yyyy-mm-dd
必要な形式を取得します(主な並べ替えキーとして曜日を使用することはお勧めできません)。
@echo off
for /f "skip=2, tokens=2-4" delims=," %%a in ('wmic path win32_localtime get day^,month^,year^ /format:csv') do (
set /a ymd = 10000 * %%c + 100 * %%b + %%a
)
set ymd=%ymd:~0,4%-%ymd:~4,2%%ymd:~6,2%
echo %ymd%