0

各ファイルを解凍して名前を変更するバッチスクリプトがあります。
残念ながら、元の zip ファイルのファイル名を保持する必要があります。

例 Jazz1.zip が解凍され、出力されるテキスト ファイルは1.Jazz1.zip.txt.
だから私は%%F~になりたいのです%%F - 4

残念ながら、私はそれを望んでいますJazz1.txt

::Setup the stage...
SETLOCAL ENABLEDELAYEDEXPANSION
SET folder=C:\P\DataSource2_W
SET count=1

::Action
CD "%folder%"
FOR %%F IN ("*.zip") DO (

 "C:\Program Files (x86)\WinZip\wzunzip" %%F
  MOVE *.txt "C:\P\DataSource2_W\TextFiles\!count!%%F.txt"
  SET /a count=!count!+1
)
ENDLOCAL
4

1 に答える 1

2

COUNT変数で何をしようとしているのか、複数の.TXTファイルを含むZIPファイルをどのように処理しているのかわかりません。

ただし、各ZIPファイルのベース名(拡張子なしの名前)が必要であることは理解しています。これは簡単です。〜n修飾子を使用するだけです(HELP FOR詳細については、コマンドプロンプトから入力してください)。

したがって、%%F=Jazz1.zipの場合、次のようになり%%~nFます。Jazz1

于 2012-05-24T11:26:31.433 に答える