Bagaimana cara memonitor folder untuk perubahan, dan menjalankan perintah jika itu, pada Windows?


32

Ada pertanyaan serupa untuk Linux dan Mac , tapi saya mencari solusi Windows di sini.

Masalahnya adalah sebagai berikut: Saya ingin menulis beberapa file skrip (js) di folder, dan memiliki program memonitor folder itu untuk perubahan file dan file baru yang ditambahkan, dan menjalankan perintah kapan pun itu terjadi (untuk mengkompilasi semuanya menjadi satu file tunggal).

Solusinya harus:

  1. Pantau perubahan file dan file baru yang ditambahkan, dalam folder.
  2. Jalankan perintah hanya jika ada perubahan.

Akan lebih baik jika itu merupakan solusi bawaan (seperti cuplikan JScript atau VBscript), atau sesuatu yang tidak memerlukan instalasi.


lihat blog ini untuk beberapa aplikasi untuk windows.
Vijay

Jawaban:


3

Ada sebuah program bernama Belvedere yang mungkin bisa melakukan trik.

http://ca.lifehacker.com/341950/belvedere-automates-your-self+cleaning-pc

Ini adalah aplikasi Windows yang berdiri sendiri yang berjalan di latar belakang.

Saya telah mengaturnya untuk memantau folder unduhan saya untuk file dengan ekstensi tertentu dengan tanggal modifikasi terakhir yang berumur satu hari. File yang ditemukannya, terhapus, namun Anda dapat menjalankannya sebagai gantinya.


Wow - yang itu terlihat sangat bagus. Saya akan memilih ini sebagai jawaban (bahkan jika saya sudah mendapatkan apa yang saya butuhkan dari yang lain) karena mungkin jauh lebih bermanfaat dan serbaguna daripada yang saya gunakan, untuk orang lain (dan mungkin saya di masa depan!) . +1 dan diterima!
Camilo Martin

2
Belvedere membuat saya kehilangan jam untuk akhirnya menemukan itu penuh dengan bug yang tidak terpecahkan , terutama dengan perintah khusus. Coba FolderMonitor saja (dan gunakan "{0}{1}"di bidang parameter, termasuk tanda kutip). Hanya masalah: Anda tidak dapat menentukan perintah terpisah untuk setiap folder. Hanya satu, secara global.
fregante

@ bfred.it Belvedere memang memiliki masalah, tetapi berhasil untuk saya. FolderMonitor juga terlihat seperti solusi yang bagus. Saya pikir ini adalah pertanyaan yang diajukan oleh pengguna .
dangowans





2

Ini adalah persyaratan umum sehingga saya terkejut tidak ada utilitas yang nyaman dibangun ke dalam OS itu sendiri.

Bagaimanapun seperti yang disebutkan sebelumnya saya telah menggunakan LogMonitor dengan sukses di masa lalu. Namun saya menemukan posting blog ini informatif dan saya menggunakan Folder Watch 4 sekarang.

Semoga ini bisa membantu Anda keluar.


+1, tapi saya tidak akan mengatakan itu adalah "persyaratan umum" bagi siapa pun kecuali kita pengembang ... Dan dalam hal ini, ada panggilan sistem untuk memantau sistem file, sehingga dianggap sebagai "integrasi OS".
Camilo Martin

1
Yah saya melihatnya dari sudut pandang bisnis & jaringan. Anda selalu ingin tahu siapa yang harus disalahkan ketika file hilang: P. Saya di tengah-tengah mendiagnosis situasi seperti ini sekarang: /
Vijay


2

Jika Anda ingin melakukan solusi bawaan menggunakan JScript atau VBScript, maka yang ingin Anda cari adalah pemantauan sistem file menggunakan langganan acara WMI. Pada dasarnya Anda menulis kode untuk memantau folder dan melakukan tindakan saat perubahan terdeteksi seperti:

  • __InstanceCreationEvent
  • __InstanceDeletionEvent
  • __InstanceModificationEvent

... dan skrip Anda berjalan pada interval yang mengawasi peristiwa ini terjadi. Ada banyak sumber daya, tetapi di sini ada beberapa untuk VBScript dan Powershell:


1

NirSoft memiliki perangkat lunak untuk memonitor perubahan file pada Windows
FolderChangesView

FolderChangesView adalah alat sederhana yang memonitor folder atau disk drive yang Anda pilih dan mencantumkan setiap nama file yang sedang dimodifikasi, dibuat, atau dihapus saat folder sedang dipantau. Anda dapat menggunakan FolderChangesView dengan drive disk lokal atau dengan berbagi jaringan jarak jauh, selama Anda telah membaca izin ke folder yang dipilih.

masukkan deskripsi gambar di sini

Anda dapat mengunduhnya secara gratis dari sini
Info Lebih Lanjut


Tampaknya lebih dari alat informasi / debugging daripada yang otomatisasi, tetapi masih menarik.
Camilo Martin

0

Anda dapat menggunakan http://jnotify.sourceforge.net/ yang berlangganan acara pemantauan sistem file os-spesifik. Kode sudah lama tetapi masih berfungsi (setidaknya pada Windows Server 2013r2 yang saya uji kemarin).

Ada juga kebangkitan github dari proyek jnotify di https://github.com/redbooth/jnotify yang tidak menawarkan aplikasi demo yang berdiri sendiri tetapi (menurut komit log) menambal beberapa bug.

Di java7 harus ada semacam filesystem seperti nonton juga, tapi saya belum mengujinya.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.