2008-12-03 10 views
17

Dosyaları alt dizinlerden silebilen bir Windows toplu iş dosyası yazmaya çalışıyorum. Dizin yapısını zor bir kod olarak seçmemek istiyorum, bu yüzden bu işlemi diğer projelerle kullanabilirim. Ben X'in türdeki dosyaları silmeniz gerekirY bir Windows toplu iş dosyasından Y alt klasörlerinden X türünün N dosyaları nasıl silinir?

  • ,
  • Ben üst klasörü C:\MyProject,
  • Y alt klasörler C:\MyProject\?,
  • silmek için N dosya vardır vardır var.

Çabuk bir del (of type) işlevi var mı?

cevap

33

Aslında standart del komutunu kullanabilirsiniz:

tip silmek istediğiniz uzantı ve MyProject tüm alt klasörlerde kontrol edecektir/S parametredir
c: 
cd MyProject 
del /S *.type 

.

+0

Harikasınız. – Jeremiah

+0

Komik bir şey, programlama yıllarca sonra "if" s ve şeyler ile bir somekind olacağını düşündüm ... –

+1

Ayrıca bu, uzantının başlangıcında eşleşen bir alt-string ile herhangi bir dosya silinecektir. Örneğin, 'del/S * .doc'' .doc' ve '.docx' dosya türlerini siler. –

1

del komutu yinelemeli silmek/S bayrağı olmasaydı, böyle bir şey (Windows için UNIX araçları gerekir) yapmak için AWK kullanmak:

dir MyProject\*.* /ad /s /b | gawk "{print \"del \\\"\" $0 \"\\*.type\\\"\";}" | cmd 

Benim 2 sent, herhangi bir benzer bir şey yapmanıza gerek kalmazsa (tüm alt klasörlerdeki X türündeki tüm dosyalara bir program uygulayarak) özyinelemeli bir bayrağı olmayan bir komutla.

İlgili konular