Tôi đang làm việc trên một tập lệnh bash nhỏ giống như dropbox, làm cách nào tôi có thể so sánh ngày của 2 tệp và thay thế (các) cũ bằng một tệp mới mà không sử dụng rSync . cách đơn giản để xử lý này? có thể SHA1 giúp tôi biết phiên bản mới hơn không?so sánh ngày của tệp bash
Trả lời
Bạn có thể so sánh lần sửa đổi tập tin với test
, sử dụng -nt
(mới hơn) và -ot
(lớn hơn) khai thác:
if [ "$file1" -ot "$file2" ]; then
cp -f "$file2" "$file1"
fi
đó là tuyệt vời :))) không bao giờ nghĩ rằng so sánh đơn giản có thể làm công việc kể từ khi tôi mới đến centOS :) cảm ơn u :) –
-nt dường như có nghĩa là mới hơn hoặc cùng tuổi. –
@JoeC Tôi đã kiểm tra và nếu cùng độ tuổi trở lại 1 (sau 'chạm -r ... ') –
thế nào về
stat file|awk -F': ' '/Modify: /{print $2}'
Điều này đã giúp tôi hiểu những gì tôi đã cố gắng hoàn thành. Bây giờ, làm thế nào để so sánh những lần đó? Tôi đang sử dụng các câu trả lời được tìm thấy ở đây: http://stackoverflow.com/questions/8116503/how-to-compare-two-datetime-strings-and-return-difference-in-hours-bash-shell Hoàn hảo! – harperville
Hoặc thậm chí ngắn hơn và đẹp hơn, nhìn tại man stat
:
stat -c %y file
Đây là giải pháp POSIX:
find -name file2 -newer file1
- 1. So sánh ngày của Python
- 2. so sánh chuỗi bash
- 3. So sánh ngày hiện tại của FreeMarker
- 4. So sánh ngày PHP
- 5. So sánh ngày JavaScript
- 6. MongoDB so sánh ngày
- 7. Ruby so sánh ngày
- 8. Cách so sánh hai ngày?
- 9. so sánh các chuỗi trong bash
- 10. So sánh ngày so sánh dữ liệu cốt lõi
- 11. So sánh Datepicker Ngày Javascript
- 12. So sánh ngày trong MySQL
- 13. XMLGregorian So sánh ngày tháng
- 14. so sánh ngày jpql ngày hôm nay
- 15. So sánh ngày và tháng
- 16. So sánh ngày với javascript
- 17. java So sánh hai ngày
- 18. Laravel ORM, so sánh ngày
- 19. NSDate, so sánh hai ngày
- 20. So sánh các ngày DB2
- 21. So sánh các số trong Bash
- 22. So sánh ngày để kiểm tra các tệp cũ
- 23. bash, gạch ngang và so sánh chuỗi
- 24. So sánh đối tượng ngày JavaScript
- 25. Oracle so sánh timestamp với ngày
- 26. So sánh hai ngày trong JS
- 27. Cách so sánh ngày trong hibernate
- 28. MYSQL: so sánh ngày NULL với CURRENT_DATE
- 29. so sánh ngày mysql với date_format
- 30. ngày So sánh trong chất lỏng
Nó thực sự phụ thuộc vào ý bạn là "ngày của tệp". Có lẽ bạn đang đề cập đến 'mtime', nhưng tính đặc hiệu thì tốt. –
@WilliamPursell, sửa đổi cuối cùng tôi có nghĩa là –