2017-03-18 6 views
0

私はnewbです。複数のファイルをバッチにドラッグアンドドロップする

拡張子が.texの244個のファイルをバッチにドラッグアンドドロップして、編集できる.pngを作成する必要があります。 .texファイルは、すべての同じディレクトリにある

for %%f in (*.tex) do c:\python27\python.exe tools/textool.py -x -v -ra %%f 

:誰かが私に私がどのように適切に使うには考えているコードを書いたので、単純に、それらすべてを選択し、トリックをやっていないでそれらをドロップしますバッチは、C:¥users¥myname¥downloads¥folder1¥folder2¥folder3にあります。あなたが手伝ってくれることを願います。

+0

親フォルダを削除できませんか? – aschipfl

+2

[複数のファイルに対してバッチファイルをドラッグアンドドロップする]の可能な複製?(http://stackoverflow.com/questions/1243240/drag-and-drop-batch-file-for-multiple-files) – NineBerry

+0

いいえ、残念ながらそれはありません何もしない。 – SiCapisceUnaSega

答えて

0

は、このバッチコードを試してみてください。パラメータなしで呼び出された場合

@echo off 
if "%~1" == "" goto :EOF 
for %%I in ("%~1\*.tex") do C:\python27\python.exe "%~dp0tools\textool.py" -x -v -ra "%%~fI" 

バッチファイルには、何もしません。

しかし、バッチファイルがパラメータ付きで呼び出された場合、(最初の)パラメータはすべての* .texファイルがPythonスクリプトによって処理されるフォルダパスを指定することを確認せずに追加できます。

代替ソリューション:

@echo off 
if "%~1" == "" goto :EOF 
pushd "%~1" 
if errorlevel 1 goto :EOF 
for %%I in ("*.tex") do C:\python27\python.exe "%~dp0tools\textool.py" -x -v -ra "%%~nxI" 
popd 

パラメータは、このバッチファイルの現在の作業ディレクトリになり、Pythonスクリプトは、単にコマンドラインパラメータを経由して渡されたファイルの拡張子を持つファイル名を取得するよう指定されたディレクトリ。

使用されているコマンドとその動作方法を理解するには、コマンドプロンプトウィンドウを開き、次のコマンドを実行して、コマンドごとに表示されているすべてのヘルプページをすべてよく読んでください。

  • call /?は...説明:
    • %~1 ...最初のパラメータを二重引用符
    • %~dp0を取り巻くずに...車と終了バッチファイルを含むフォルダのパスがあり、引数0のパスバックスラッシュで
  • echo /?
  • for /?
  • goto /?
  • if /?
  • popd /?
  • pushd /?

注:パターンにマッチした各ファイルを* .pngファイルに変換するためのパラメータとしてコマンドラインで指定されたフォルダパス内のすべての* .texファイルを検索するようにPythonスクリプトを変更する方がはるかに高速です。

関連する問題