2009-05-07 17 views

cevap

12

(metni içeren yok tüm satırları dahil yüzden bakıyor olurduk sözdizimi biraz farklı olabilir, eğer, bunu kullanmak çok ihtiyacı olmadı ve benim şimdiki konumda Windows çalıştırmak don'r.

kullanın findstr /? Ayrıntılar için bir komut isteminden.

Ya CygWin'i (t için tercih ettiğim aracın

ls -al | grep -vi '\.pdf$' 

Zeyilname:

Aslında bu fark etmedi ama kullanabilmesi görünüşte de Regexes desteklemek FINDSTR: şeyler onun tür), sadece grep kendisi kullanabilir

dir | findstr /vi "\.pdf$" 
grep olarak

sadece aynı (ben bu test etmedim, ben sadece TechNet üzerinde buldum, bu yüzden bunu kendiniz test etmek gerekir).

+0

+1 Böyle görünüyor - güzel iş. –

+0

Teşekkürler, @Andrew, gerçekten test etmek için VMWare Player'ı kandırmak istemedim :-) – paxdiablo

+0

Harika çalışıyor. Teşekkürler! –

3

Neredeyse istediğini yapmaya FINDSTR ile dir birleştirebilirsiniz: Bir dosya my.pdf.converted.txt çağrılıp çağrılmadığını

dir * | findstr /vi .pdf 

Not olsa, yanlış burada atılır olacağını. olursa olsun denemek Ne

for /f %a in ('dir /b *') do @if "%~xa" neq ".txt" echo %a 

İyi şanslar :) DOS "eğlence" dir:

GERÇEKTEN fantezi almak istiyorsanız, burada bir toplu komut dosyası için daha uygun tamamen doğru versiyonu bulunuyor.

+0

Neyse ki, "pdf.converted.txt" örneğiniz gibi herhangi bir hile ile uğraşmıyorum. Yine de iyi yakalayın! XP'de –

+0

findstr, satırın sonuna her zamanki şekilde uydurmak için yeterince düzenli olarak kullanabileceğini söylüyor. – Anonymous

0

Ben zaten sizin için çalışan biliyorum ama böyle DOS çoğu sürümleri (en azından olanları hatırlıyorum) ile bunu yapabilir.

Attrib * .bad + H
dir/oE
Attrib * .bad -H
ardından dir yapıyor, görüntülemek istemediğiniz olanları gizleme onları gösterdikten etkisi vardır

. Onun biraz iğrenç itiraf etmeliyim ama hile yapmak gibi görünüyor.

dir | find/V ".pdf" 

Ama pdf dosyası (lar) içerecektir çıktı altındaki dosyaların sayısını hatırlamıyorum:

0

MS-DOS veya CMD olarak sadece pdf dosyalarını kaçınmak için yazın. ayrıca ".xxx", xxx herhangi uzantısıdır nerede ".pdf" değiştirerek de diğer uzantılar için bu komutu kullanabilirsiniz yanında

.

0

Burada basit bir yolu başka komuta Findstr/bulmak veya boru tesisatı kullanmadan açıklanmıştır: Temelde

for %%a in (*) do (
    if not exist %%~Na.pdf echo %%a 
) 

tüm dosyaları döngü için bir şekilde döngü. "Varsa", * .pdf dosyasının yazdırıldığından emin olmaz.

%% ~ Na, %% dosya adını uzantı olmadan değiştirir.

İlgili konular