每當目錄發生變化時,我的 bash 腳本都會使用 incron 運行。但是,由于上傳了多個影像,所以我不想在影像被移動到不同目錄時運行多個 CURL 實體(用于構建這些影像的縮略圖快取)。運行多個 CURL 實體會導致構建有缺陷的影像縮略圖。

我不是這里的專家,但我聽說flock 可以鎖定行程,我可以使用flock 來鎖定CURL,除非它是免費的,否則不應有多個CURL 實體并行(例如,我可以添加類似curl --silent http://127.0.0.1/build-cache.php
pi@pi:~$incrontab -e
/var/www/html/images/ IN_CLOSE_WRITE /usr/local/bin/SERVIES.sh
pi@pi:~$sudo nano /usr/local/bin/SERVIES.sh
#!/bin/bash
find '/var/www/html/images' -maxdepth 1 -name '*jpg' -exec bash -c 'mv {} /var/www/html/gallery/$(basename {} | sed "s/^.\{,19\}//")' \; &&
curl --silent http://127.0.0.1/build-cache.php
uj5u.com熱心網友回復:
不過這很容易!
pi@pi:~$sudo nano /usr/local/bin/SERVIES.sh
#!/bin/bash
find '/var/www/html/images' -maxdepth 1 -name '*jpg' -exec bash -c 'mv {} /var/www/html/gallery/$(basename {} | sed "s/^.\{,19\}//")' \; &&
flock -n /var/www/html/build-cache.lock curl --silent curl --silent http://127.0.0.1/build-cache.php
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/496907.html
