Ini ialah arahan inotify-hookablep yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS.
JADUAL:
NAMA
inotify-hookable - menyekat antara muka baris arahan untuk memberitahu
SINOPSIS
Tonton direktori, beritahu kami apabila perkara berubah di dalamnya:
inotify-hookable --watch-directories /tmp/watch-this
Tonton pokok git, beberapa konfigurasi, dan repositori aset statik, mulakan semula pelayan web
atau mampatkan aset tersebut jika ada perubahan:
inotify-hookable \
--watch-directories /etc/uwsgi \
--watch-directories /git_tree/central \
--watch-directories /etc/app-config \
--watch-directories /git_tree/static_assets \
--on-modify-path-command "^(/etc/uwsgi|/git_tree/central|/etc/app-config)=sudo /etc/init.d/uwsgi restart" \
--on-modify-path-command "^/git_tree/static_assets=(cd /git_tree/static_assets && compress_static_assets)"
Atau tonton fail tertentu:
inotify-hookable \
--watch-files /var/www/cgi-bin/mod_perl_handler \
--on-modify-command "apachectl restart"
DESCRIPTION
Program baris arahan mudah ini adalah pengganti saya untuk fungsi yang ditawarkan oleh
Filesys Plack::Memberitahu::Mudah. Saya mendapati bahawa pada pokok git yang sangat besar Plack akan menghabiskan satu
jumlah yang berlebihan menonton sistem fail untuk perubahan.
Program ini menggunakan Linux::Inotify2, jadi kernel akan memberitahunya serta-merta apabila sesuatu
perubahan (sebenarnya ia sangat pantas sehingga kami perlu memikirkan seberapa pantas ia menghantar acara kepada kami).
Hasilnya ialah anda boleh menjalankan ini contohnya dalam sesi skrin dan pastikan ia menonton anda
persekitaran pembangunan, dan pelayan web anda akan mula dimulakan semula sebelum jari anda
meninggalkan menyelamatkan .
fail sementara vim dan emacs diabaikan secara lalai (lihat "--ignore-paths".) supaya anda boleh
edit fail anda tanpa pelayan anda dimulakan semula tanpa perlu.
Pada masa ini antara muka baris arahan untuk ini adalah satu-satunya yang benar-benar masuk akal,
modul ini disekat sepenuhnya (walaupun ia mungkin boleh dijalankan dalam proses lain melalui
POE atau sesuatu). Tampalan dialu-alukan.
PILIHAN
Ambil perhatian bahawa pilihan boolean boleh dinafikan dengan "--no-OPTION", cth "--no-r" atau
"--no-recursive" untuk mematikan pilihan "--recursive" yang dihidupkan secara lalai.
"-w" or "--lihat-direktori"
Tentukan ini untuk menonton direktori, anda boleh memberikan ini berapa kali anda suka menonton
banyak direktori.
"-f" or "--watch-files"
Tonton fail, tentukan beberapa kali untuk berbilang fail. Anda boleh menonton fail dan
direktori dalam arahan yang sama.
"-r" or "--rekursif"
Jika anda membekalkan ini, mana-mana direktori yang anda berikan akan diperhatikan secara rekursif. Ini dihidupkan oleh
lalai.
"-c" or "--on-modify-command"
Perintah yang akan dijalankan apabila sesuatu diubah suai.
"-C" or "--on-modify-path-command"
Pasangan nilai kunci yang kuncinya ialah regex yang akan dipadankan dengan laluan yang diubah suai dan
nilai ialah arahan yang akan dijalankan. Lihat "SINOPSIS" untuk contoh.
Berguna untuk cth memulakan semula pelayan web jika anda mengubah suai direktori A tetapi memampatkan beberapa
aset statik jika anda mengubah suai direktori B.
"-t" or "--masa penampan"
Linux akan menghantar acara pemberitahuan kepada anda benar-benar pantas, begitu pantas sehingga jika anda menjalankan sesuatu seperti:
sentuh bar foo
Anda mungkin mendapat acara untuk foo dalam satu kelompok, diikuti dengan acara untuk bar kemudian.
Untuk menangani perkara ini, kami memasukkan gelung apabila kami mula mendapatkan acara dan tidur secara lalai
100 mikrosaat, selagi kita terus mendapat acara, kita terus tidur selama 100 mikrosaat,
tetapi sebaik sahaja kami tidak menerima apa-apa yang baru, kami memecat pengendali acara kami.
"-saya" or "--abaikan-laluan"
Regex untuk fail/direktori untuk mengabaikan acara. Secara lalai ini ditetapkan kepada regex untuk
vim dan fail sementara emacs, "qr{\..*sw.\z}" dan "qr{\.\#[^/]+\z}" masing-masing.
Regex sepadan selepas sebarang "/" dalam laluan atau permulaan rentetan.
"-d" or "--debug"
Memuntahkan beberapa keluaran nyahpepijat verbose semasa berjalan.
PENGHARGAAN
Modul ini pada asalnya dibangunkan di dan untuk Booking.com. Dengan kelulusan daripada
Booking.com, modul ini digeneralisasikan dan diletakkan pada CPAN, yang penulis inginkan
untuk menyatakan rasa terima kasih mereka.
Gunakan inotify-hookablep dalam talian menggunakan perkhidmatan onworks.net