2017-07-02 2 views
-2

に数文字で始まらないのをリスト:ファイルのコピー私の監督は、例えばバッチファイル</p> <p>に数文字を開始せずにファイルをコピーする方法をバッチ

12red.pcx 
9red.pcx 
96blue.pcx 
alipro.pcx 

それから私は、唯一のaliproをコピーする必要があります。

@echo off 
set Design_path=D:\ 
set USB_path=E:\usb\ 
set t12=12*.pcx 
set t9=9*.pcx 
set t6=6*.pcx 
set tsize=*.pcx 
set design12=Dis_12 
set design9=Dis_9 
set design6=Dis_6 
set designsize=D_Size 
rem // Create Dir if not exist 
if not exist %Design_path%%design12% (mkdir %Design_path%%design12%) 
if not exist %Design_path%%design9% (mkdir %Design_path%%design9%) 
if not exist %Design_path%%design6% (mkdir %Design_path%%design6%) 
if not exist %Design_path%%designsize% (mkdir %Design_path%%designsize%) 
if exist %USB_path%%t12% copy %USB_path%%t12% %Design_path%%design12% 
if exist %USB_path%%t9% copy %USB_path%%t9% %Design_path%%design9% 
if exist %USB_path%%t6% copy %USB_path%%t6% %Design_path%%design6% 
+4

? reqについては、 "for/f" delims = "%% a in( 'dir/B * .pcx^| findstr"^[^ 0-9] "')エコーコピーを実行します%% A x:\ whereever' – LotPings

+0

おかげで私の友人 – AliReza

+1

'%% a'は大文字と小文字の区別がつかないように間違っています。 – LotPings

答えて

0

N:コピーファイルのため、このバッチコードは、バッチ

使用による数の文字で始まるPCX OWコピーの数9、6でスタートせずに任意のファイル、例えば12

私のリストにその:私は必要avf.pcxと3366.pcxコピー

3366.pcx 
12gun.pcx 
9ghost2.pcx 
6bgre.pcx 
avf.pcx 

この私のコード

for /f "delims=" %%a in ('dir %USB_path% /b *.pcx^|findstr /r /c:"^[^9][^6][^12]" ') do (
    echo %%a 
    copy "%USB_path%%%a" "%Design_path%%designsize%" 
) 
+0

[タグ:lotpings]助けてください – AliReza

+0

あなたの最初の要件と異なるので、指定したものを除外したい数字はすべてではありませんか?あなたが他に興味があるかもしれない解決策があればあなたの質問をより良く編集してください。 – LotPings

+0

[tag:lotpings]その男性に感謝しますか? – AliReza

1

このソリューションは、9 [^0-9]

に ていない否定文字クラス [^]ゼロ(開始時 ^アンカー)が始まる行だけを選択するように をfindstrのの限定された正規表現の機能を使用していますに
for /f "delims=" %%a in (
    'dir /B *.pcx^|findstr "^[^0-9]" ' 
) Do Echo copy %%a x:\whereever 

特別な番号を除外する場合は、異なる正規表現で行うことができます 本のフィルタラインないあなたがスペースで区切られ、いくつかの正規表現を持つことができます/V オプション付きマッチング

for /f "delims=" %%a in (
    'dir /B "*.pcx" ^|findstr /V "^6 ^9 ^12" ' 
) Do (
    Echo %%a 
    Rem copy ... 
) 

サンプル出力コードがユーザーの要件に関連してどのように

> Dir /B 
11foo.pcx 
12red.pcx 
13bar.pcx 
3366.pcx 
96blue.pcx 
9red.pcx 
alipro.pcx 

> SO_44875749.cmd 
11foo.pcx 
13bar.pcx 
3366.pcx 
alipro.pcx 
関連する問題