Aracılığıyla paylaş


forfiles

Bir dosya veya dosya kümesinde bir komut seçer ve çalıştırır. Bu komut en yaygın olarak toplu iş dosyalarında kullanılır.

Sözdizimi

forfiles [/P pathname] [/M searchmask] [/S] [/C command] [/D [+ | -] [{<date> | <days>}]]

Parametreler

Parametre Açıklama
/P <pathname> Aramanın başlatıldığı yolu belirtir. Arama varsayılan olarak geçerli çalışma dizininde başlar.
/M <searchmask> Dosyaları belirtilen arama maskesine göre arar. Varsayılan arama maskesi *.
/S forfiles komutuna özyinelemeli olarak alt dizinlerde arama talimatı verir.
/C <command> Her dosyada belirtilen komutu çalıştırır. Komut dizeleri çift tırnak içine alınmalıdır. Varsayılan komut "cmd /c echo @file".
/D [{+\|-}][{<date> | <days>}] Belirtilen zaman çerçevesi içinde son değiştirme tarihi olan dosyaları seçer:
  • Son değiştirme tarihi belirtilen tarihten sonra veya bu tarihe eşit (+) veya daha eski (-) olan dosyaları seçer; burada tarih AA/GG/YYYY biçimindedir.
  • Son değiştirme tarihi(+) tarihinden sonra veya bu tarihe eşit olan dosyaları, belirtilen gün sayısı ile belirtilen gün sayısı veya geçerli tarihten önceki veya buna eşit (-) gün sayısı eksi olarak seçer.
  • gün için geçerli değerler 0-32.768 aralığındaki herhangi bir sayıyı içerir. Hiçbir işaret belirtilmezse, varsayılan olarak + kullanılır.
/? Cmd penceresinde yardım metnini görüntüler.

Açıklamalar

  • forfiles /S komutu dir /Sile benzerdir.

  • komut dizesinde, /C komut satırı seçeneği tarafından belirtilen şekilde aşağıdaki değişkenleri kullanabilirsiniz:

    Değişken Açıklama
    @FILE Dosya adı.
    @FNAME Uzantı olmadan dosya adı.
    @EXT Dosya adı uzantısı.
    @PATH Dosyanın tam yolu.
    @RELPATH Dosyanın göreli yolu.
    @ISDIR Bir dosya türü bir dizinse TRUE olarak değerlendirilir. Aksi takdirde, bu değişken YANLIŞ olarak değerlendirilir.
    @FSIZE Bayt cinsinden dosya boyutu.
    @FDATE Dosyadaki son değiştirme tarihi damgası.
    @FTIME Dosyadaki son değiştirme zamanı damgası.
  • forfiles komutu, üzerinde bir komut çalıştırmanıza veya bağımsız değişkenleri birden çok dosyaya geçirmenize olanak tanır. Örneğin, .txt dosya adı uzantısına sahip bir ağaçtaki tüm dosyalarda tür komutunu çalıştırabilirsiniz. Ya da C sürücüsündeki her toplu iş dosyasını (*.bat) ilk bağımsız değişken olarak dosya adı Myinput.txt yürütebilirsiniz.

  • Bu komut şunu yapabilir:

    • /d parametresini kullanarak dosyaları mutlak tarihe veya göreli tarihe göre seçin.

    • @FSIZE ve @FDATEgibi değişkenleri kullanarak dosyaların arşiv ağacını oluşturun.

    • @ISDIR değişkenini kullanarak dosyaları dizinlerden ayırt edin.

    • 0xHH biçiminde (örneğin, bir sekme için 0x09) karakterin onaltılık kodunu kullanarak komut satırına özel karakterler ekleyin.

  • Bu komut, yalnızca tek bir dosyayı işlemek üzere tasarlanmış araçlara recurse subdirectories bayrağı uygulayarak çalışır.

Örnekler

C sürücüsündeki tüm toplu iş dosyalarını listelemek için şunu yazın:

forfiles /P c:\ /S /M *.bat /C "cmd /c echo @file is a batch file"

C sürücüsündeki tüm dizinleri listelemek için şunu yazın:

forfiles /P c:\ /S /M * /C "cmd /c if @isdir==TRUE echo @file is a directory"

Geçerli dizinde en az bir yaşında olan tüm dosyaları listelemek için şunu yazın:

forfiles /S /M *.* /D -365 /C "cmd /c echo @file is at least one year old."

Geçerli dizindeki 1 Ocak 2007'den eski dosyaların her biri için eski dosyasının metnini görüntülemek için şunu yazın:

forfiles /S /M *.* /D -01/01/2007 /C "cmd /c echo @file is outdated."

Geçerli dizindeki tüm dosyaların dosya adı uzantılarını sütun biçiminde listelemek ve uzantıdan önce bir sekme eklemek için şunu yazın:

forfiles /S /M *.* /C "cmd /c echo The extension of @file is 0x09@ext"