Gunakan Forfiles Untuk Memproses Fail Berdasarkan Umur

Ia sentiasa baik untuk mengetahui beberapa sihir baris arahan, kerana kadang-kadang lebih mudah untuk memproses perintah dengan cara itu.

Panduan ini menunjukkan perintah Forfiles dalam Windows Vista dan Windows 7 (Kemaskini: Juga tersedia dalam versi Windows yang lebih baru).

Forfiles boleh memproses fail berdasarkan nama, sambungan fail dan umur. Ia adalah mungkin untuk mencari semua dokumen dalam direktori yang lebih tua daripada 20 hari, atau semua dokumen dalam c: \ dokumen yang telah diubah sejak tarikh tertentu.

Perintah forfiles boleh digabungkan dengan pilihan pemprosesan untuk memadam fail tersebut, atau untuk membuat senarai semua fail yang sepadan dengan penapis. Mari lihat lebih dekat pada arahan forfiles.

FORFILES [/ P pathname] [/ M searchmask] [/ S] [/ C command] [/ D [+ | -] dd / MM / yyyy]

Penerangan: Memilih fail (atau set fail) dan melaksanakan arahan pada fail itu. Ini berguna untuk kerja batch.

Senarai Parameter:

  • / P pathname Menunjukkan jalan untuk memulakan pencarian. Folder lalai adalah direktori kerja semasa (.).
  • / M searchmask Mencari fail mengikut searchmask. Carian lalai adalah '*'.
  • / S Mengajar forfiles untuk mengulang semula ke subdirektori. Seperti "DIR / S".
  • / C Perintah Menunjukkan arahan untuk melaksanakan setiap fail. Arahan peronda harus dibungkus dengan petikan berganda. Perintah lalai ialah "cmd / c echo @file".

Pembolehubah berikut boleh digunakan dalam rentetan perintah:

  • @file - mengembalikan nama fail.
  • @fname - mengembalikan nama fail tanpa sambungan.
  • @ext - hanya mengembalikan pelanjutan fail.
  • @path - mengembalikan laluan penuh fail.
  • @relpath - mengembalikan laluan relatif fail tersebut.
  • @isdir - mengembalikan "TRUE" jika jenis fail adalah direktori, dan "FALSE" untuk fail.
  • @fsize - mengembalikan saiz fail dalam bait.
  • @fdate - mengembalikan tarikh diubah terakhir fail.
  • @ftime - mengembalikan masa diubahsuai terakhir fail.

Untuk menyertakan aksara khas dalam baris arahan, gunakan kod heksadesimal untuk watak dalam format 0xHH (ex 0x09 untuk tab). Perintah CMD.exe dalaman hendaklah didahului dengan "cmd / c".

/ D tarikh Memilih fail dengan tarikh diubah suai yang terakhir lebih besar atau sama dengan (+), atau kurang daripada atau sama dengan (-), tarikh yang ditetapkan menggunakan format "dd / MM / yyyy"; atau memilih fail dengan tarikh diubah suai yang terakhir lebih besar daripada atau sama dengan (+) tarikh semasa ditambah hari "dd", atau kurang daripada atau sama dengan (-) tarikh semasa dikurangkan hari "dd". Bilangan hari "dd" yang sah boleh menjadi sebarang nombor dalam lingkungan 0 - 32768. "+" diambil sebagai tanda lalai jika tidak ditentukan.

/? Memaparkan mesej bantuan ini. Fail bantuan ini boleh dibuka dengan memasukkan command forfiles /? dalam arahan arahan. Tekan Windows-R, ketik cmd, dan tekan enter untuk melancarkan baris arahan dalam Windows.

Perintah forfiles /P c:\test\ /M .doc /S /D -10 mencari direktori c: \ test dan semua subdirektori untuk fail dengan sambungan .doc yang lebih tua daripada 10 hari.

Parameter / p diikuti oleh direktori menentukan direktori permulaan, / s termasuk subdirektori dalam carian, / m menapis fail dan folder berdasarkan rentetan yang dimasukkan, dan / D mentakrifkan tarikh atau jangka masa.

Perintah / C digunakan untuk memproses fail yang dijumpai lebih jauh. Ia boleh misalnya digunakan untuk menjalankan perintah berikut: /C "cmd /c echo @fname" > test.txt echo nama-nama setiap fail yang dijumpai dan simpan hasil dalam text.txt dalam direktori yang sama.

Perintah penuh kemudian kelihatan seperti forfiles /P c:\test\ /M .doc /S /D -10 /C "cmd /c echo @fname" > test.txt

Kemungkinan lain adalah memadam fail yang sepadan dengan carian, ini dilakukan dengan perintah /C "cmd /c del @File

Walau bagaimanapun disyorkan untuk menguji output terlebih dahulu, sebelum mengeluarkan arahan memadam untuk memastikan bahawa hanya fail yang betul dipadam. Pengguna berpengalaman boleh membuat fail kumpulan untuk melaksanakan forfiles secara teratur.