2017-03-18 127 views
0

請記住,我是一個新手。拖放多個文件到批處理

我需要將具有.tex擴展名的244個文件拖放到批處理中,然後創建一個我可以編輯的.png。簡單地選擇所有這些,在沒有做的伎倆拖放,所以有人寫信給我說我不知道​​代碼如何正確使用:

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

的.tex文件裏都在的同一目錄下批處理,它位於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 /?

注:修改Python腳本可以更快地搜索自己,查找命令行上指定的文件夾路徑中的所有* .tex文件,作爲將每個找到的匹配模式的文件轉換爲* .png文件的參數。

相關問題