2016-09-13 3 views
0

ファイル名に日付タイムスタンプを持つCSVファイルのディレクトリがあります。名前に最新の日付時刻のファイルをコピーする必要があります。タイムスタンプ付きファイル名に基づいて最新のファイルをコピーするバッチファイルを作成する方法

バッチスクリプトについて言えば、これは私がこれまで行ってきたことですが、1つのファイルをコピーすることができますが、すべてのファイル名をループして最新の日付だけをコピーすることはできません。 ありがとうございます。

SET sourceDir=\\source\path 
SET targetDir=\\target\path 

copy "%sourceDir%\examplefile_20160111_010003.csv" "%targetDir%\newname.csv" 

答えて

1

これを実行できるコマンドはありません。

は、/onパラメータでアルファベット順に並べ替えることができます(これはまさにあなたが望むものです)。 /bだけあなたに、ファイル名を与えて、/-dは、フォルダを除外:

dir /a-d /on /b 

あなたが最後にしたいです。 forループでそれを取得します。次に

for /f "delims=" %%a in ('dir /a-d /on /b "%sourceDir%\examplefile_*.csv"') do set latest=%%a 

することができますcopy "%sourceDir%\%latest%" "%targetDir%\newname.csv"

御馳走を働いた
+0

おかげでステファン –

関連する問題