Không chuyển hướng với> | làm gì


16

Khi nào bạn nên sử dụng >|để chuyển hướng đầu ra sang một tệp thay vì chỉ >?

Lời giải thích được đưa ra khi tôi được chỉ ra rằng nó đảm bảo tệp đích đã bị cắt trước. Nhưng tôi nghĩ >đã ngụ ý rằng.

>|hữu ích không?

Câu trả lời:


16

Đó là một sự bỏ qua rõ ràng của noclobbertùy chọn.

Bằng cách đó, bạn có thể ghi đè tệp ngay cả khi noclobberđã đặt.

Xem http://mywiki.wooledge.org/NoClobber

Từ man bash:

Nếu toán tử chuyển hướng là> và tùy chọn noclobber cho tập hợp dựng sẵn đã được bật, chuyển hướng sẽ thất bại nếu tệp có kết quả từ việc mở rộng từ tồn tại và là một tệp thông thường. Nếu toán tử chuyển hướng là> | hoặc toán tử chuyển hướng là> và tùy chọn noclobber cho lệnh dựng sẵn không được bật, thì chuyển hướng được thử ngay cả khi tệp có tên bằng từ tồn tại.


8

Từ man bash:

         -C      If set, bash does not overwrite an  existing  file  with
                  the  >,  >&,  and <> redirection operators.  This may be
                  overridden when creating output files by using the redi
                  rection operator >| instead of >.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.