2016-10-29 2 views
-5

からのjpgのを削除するバッチファイルを探しています私は.txtファイルの一覧からJPG年代を削除するバッチファイルを探しています.txtファイルの一覧

E:\ 1は7つのイメージを持っている\テスト7.jpg list.txtにまで1.JPGは、ファイルのリストは、私は私のリストに.jpgsをコピーするコードを見つけ

あなたの助けを

感謝を2.JPG、1.JPGを削除する必要があります。 txtを別のフォルダにコピーします。 代わりに私はそれを削除する必要がコピー、

@echo off 
set src_folder=E:\test\1 
set dst_folder=E:\test\2 
set file_list=E:\test\list.txt 

if not exist "%dst_folder%" mkdir "%dst_folder%" 

for /f "delims=" %%f in (%file_list%) do (
xcopy "%src_folder%\%%f" "%dst_folder%\" 
) 

Iは画像 列Cを連結(A1、B1)のエクセル カラムAデル 列Bのリストを使用して、この解決策を見つけたとコピーでペースト列Cバッチファイルはイメージと同じディレクトリで実行されます。

+0

このサイトはコード作成サービスではありませんbtw – Carcigenicate

+0

これまでに試したことがあるコードを投稿できました。 – Ukimiku

答えて

1

これはそれを行う必要があります。

@Echo Off 
(Set file_list=E:\test\list.txt) 
For /F "UseBackQ Delims=" %%A In ("%file_list%") Do If Exist "%%~A" Del "%%~A" 

あなたも、ドラッグして、この単一ラインのバッチスクリプトにあなたのlist.txtにドロップできます。

@For /F "UseBackQ Delims=" %%A In ("%~1") Do @(If Exist "%%~A" Del "%%~A") 
+0

'set'コマンドラインの括弧の目的は何ですか?代わりに 'set" file_list = E:\ test \ list.txt "'を使用することをお勧めします。 – aschipfl

+0

あなたの例の二重引用符の目的は何ですか? – Compo

+1

'set" name = value "内の括弧は通常、不要なスペースの追加を避け、特殊文字の解釈を防ぐために使用されます。 – user2956477

0

これは1行のバッチファイルで行うことができます。指定したテキストファイルから

@for /F "usebackq delims=" %%I in ("E:\test\list.txt") do @del "%%~I" 2>nul 

コマンドのプロセスの各ラインを、コマンドを実行から読み取るラインとDELファイル。

ファイルを削除する前にファイルの存在チェックが行われていません。代わりに、ファイルは、ハンドルSTDERRからデバイスNULにリダイレクトすることによって抑制された状態で削除されます。

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

  • for /?

読むまた、Microsoftの記事Using command redirection operators

関連する問題