2014-02-12 43 views
0

我有一個包含一些圖像的文件夾,我有一個控制檯應用程序將調整圖片大小,我想寫一個批處理腳本來檢查每個圖像,如果它的大小大於250KB然後它調整它們,調整圖像大小如果它大於X通過批處理腳本

for every file in root 
if file > 250KB 
app.exe resize file 
next file 

如何通過批處理腳本做到這一點?

+1

您可以使用PowerShell而不是cmd嗎?你可以做'ls *。* | where-object {$ _。length -gt 256000}'然後。 – Luaan

回答

1

您可以使用這樣的事情:

for %f in (C:\*.*) do @if %~zf gtr 256000 @app.exe %f 

雖然注意到一個BAT/CMD文件裏,你必須逃離%

for %%f in (C:\*.*) do @if %%~zf gtr 256000 @app.exe %%f 

如果你需要做的更多,你可以使用括號來做這樣的事情:

for %%f in (C:\*.*) do @if %%~zf gtr 256000 (
    @app.exe %%f 
    @echo Launched %%f 
) 

但是,我不確定這是否對你有幫助,因爲您希望在刪除文件之前等待應用程序退出。

+0

感謝它的工作就像一個魅力,但如果我想做兩個命令,如果條件爲真如何將代碼,例如我想在調整大小後添加德爾%% f,我試圖但代碼塊如果後,但它不工作:( – Nofuzy

+0

@Stranger更新了答案。 – Luaan

+0

謝謝它的工作;) – Nofuzy

相關問題