Tôi đang viết một tệp thực hiện sẽ dọn sạch một số tệp vô dụng vào cuối quá trình biên dịch. Nếu một mục tiêu đã được thực hiện, tất nhiên nó sẽ bỏ qua mục tiêu đó và tệp vô dụng có thể không có ở đó. Vì vậy, nếu tôi làm điều này:
rm lexer.ml interpparse.ml interpparse.mli
Tôi có thể gặp lỗi vì một trong các tệp không tồn tại. Có cách nào để nói rm
để bỏ qua các tập tin này?
Khi đọc trang man, tôi thấy tùy chọn sau:
-f Attempt to remove the files without prompting for confirma-
tion, regardless of the file's permissions. If the file does
not exist, do not display a diagnostic message or modify the
exit status to reflect an error. The -f option overrides any
previous -i options.
Nghe có vẻ gần như những gì tôi muốn, nhưng tôi không thực sự chắc chắn về phần quyền. Có cách nào để làm việc này không?
-f
tùy chọn vẫn cố xóa nó. Nó sẽ thất bại. Nó sẽ không nói với bạn rằng nó thất bại. Hữu ích nếu tên tệp là một biến hoặc toàn cầu.
rm --interactive=never
những hành động như rm -f
ngoại trừ nó trả về trạng thái thoát lỗi. xem tại đây để biết thêm chi tiết: unix.stackexchange.com/questions/72864/ Kẻ
rm
trong một hộp cát? Nó trông giống như-f
làm chính xác những gì bạn muốn, bất kể toàn cầu.