2

このコマンドを実行するバッチファイルを作成したいと思います。

C:\Program Files (x86)\IrfanView\i_view32.exe" "C:\Users\digi_admin\TIFFs\
OLD DIRECTORY\*.tif" /ini="C:\Users\digi_admin\Documents\" /advancedbatch /tifc=4  
/convert="C:\Users\digi_admin\CompTIFs\Some Folder\NEW DIRECTORY\*.tif"

いくつかのフォルダ内のすべてのファイル。すべてのファイルは\TIFFs\に配置されますが、いくつかの異なるサブフォルダーに配置されます。(OLD DIRECTORY)また、コマンドを実行する(実行する?)前に、フォルダー\ NEW DIRECTORY \(OLD DIRECTORYと同じ名前になります)を作成する必要があります。これが私がこれまでに持っているものです:

FOR /D %d IN ("C:\Users\digi_admin\TIFFs\*.*") DO "C:\Program Files 
(x86)\IrfanView\i_view32.exe" %d\*.tif /ini="C:\Users\digi_admin\Documents\" 
/advancedbatch /tifc=4 /convert="C:\Users\digi_admin\CompTIFs\Some Folder\%d\*.tif"

私はコマンドラインで試しているので、%dは%%dである必要があります。私はDOSに慣れていないので、比較的簡単だと思います。どんな助けでも大歓迎です。

4

1 に答える 1

3
@ECHO OFF
SETLOCAL
SET destroot=C:\Users\digi_admin\CompTIFs
FOR /D %%d IN ("%destroot%\*") DO (
MD "%destroot%\%%~nxd" 2>nul

"C:\Program Files (x86)\IrfanView\i_view32.exe" "%%d\*.tif" /ini="C:\Users\digi_admin\Documents\" /advancedbatch /tifc=4 /convert="%destroot%\%%~nxd\*.tif"
)

これで、「/convert」が宛先filespecであると想定しています。

ノート:

  • 宛先ルートを変数に設定しました-入力が簡単になります
  • 2> nulは、宛先ディレクトリがすでに存在する場合に生成されるエラーメッセージを抑制します
  • %%〜nxdは、%%dからの名前と拡張を意味します。おそらく、拡張機能は存在しません-これは無害です
于 2013-03-12T01:09:38.333 に答える