ファイルを自動的にバックアップし、最大 5 つのファイルを保存し、5 つのファイルのいずれかを復元するオプションを備えたプログラムを作成しています。ファイルがバックアップされると、YYYYMMDD_HHMMSS_filename.ext の形式で日付と時刻のスタンプが追加されます。ファイルを復元するには、まず日付スタンプを切り取る必要があります。ファイルの先頭の日付スタンプを切り取るために現在使用している方法は次のとおりです。
set VAR=%VAR:~16%
echo %VAR%
問題は、バックアップされたファイルが「20120825_140343_ファイル名.txt」という名前の場合、上記の方法では「ファイル」のみが返され、スペース以降が省略されます。ファイル名のスペースは、それらを使用するプログラムによって認識されるように保持する必要があります。
tl;dr 文字列 20120825_140343_file name.txt を「file name.txt」だけにカットする必要がありますが、私のメソッドは単に「file」を返します。
区切り文字または何かが役立つ場合は、日付スタンプとファイル名を別の文字で区切ることができます.IE 20120825_140343-file-name.txt