Tôi có tập lệnh mã hóa video mà tôi muốn chạy ngay khi tệp được chuyển vào một thư mục cụ thể.Di chuyển tệp vào thư mục khác sau khi chuyển xong
Nếu tôi sử dụng một cái gì đó như inotify, làm thế nào để đảm bảo rằng các tập tin không được mã hóa cho đến khi nó được thực hiện di chuyển?
tôi đã xem xét làm một cái gì đó như:
- Sao chép (rsync) tập tin vào thư mục tạm thời.
- Sau khi hoàn tất, di chuyển (đơn giản 'mv') vào thư mục mã hóa.
- Yêu cầu tập lệnh của tôi giám sát thư mục mã hóa.
Tuy nhiên, làm cách nào để làm cho bướC# 2 hoạt động bình thường và chỉ chạy khi # 1 hoàn tất?
Tôi đang sử dụng Ubuntu Server 11.10 và tôi muốn sử dụng bash, nhưng tôi có thể được thuyết phục để sử dụng Python nếu điều đó đơn giản hóa vấn đề.
Tôi không "tải xuống" tệp vào thư mục này, mỗi lần; thay vào đó tôi sẽ sử dụng rsync phần lớn thời gian.
Ngoài ra, Máy chủ Ubuntu này đang chạy trên máy ảo.
Tôi có bộ nhớ tệp chính được gắn qua NFS từ máy chủ FreeBSD.
rsync hoạt động theo cách tương tự - tệp sẽ không hiển thị trong danh sách các tệp được mã hóa cho đến khi nó được chuyển xong. – javanix