Tôi muốn biết nếu có lệnh BASH được tích hợp có in một số văn bản trên stderr, giống như lệnh echo
in văn bản trên thiết bị xuất chuẩn hay không. Tôi không muốn sử dụng chuyển hướng io tạm thời. Tôi sử dụng lệnh tích hợp để tạo ra lỗi trên stderr chẳng hạn như ls --asdf
(ls: tùy chọn không được công nhận '--asdf') nhưng tôi muốn một cái gì đó neater.Lệnh Bash in một thông báo trên stderr
Sửa ----
Thật sự tôi đang cố gắng để chứng minh chuyển hướng stderr/stdout, và ví dụ của tôi trông giống như:
sh test.sh >test-out.txt 2>test-err.txt
Để rõ ràng, tôi muốn giữ file test.sh như đơn giản và sạch sẽ nhất có thể, điều này có nghĩa là tránh toán tử >
bên trong tệp.
Bạn có thể muốn thêm: 'if (argc> 1) fprintf (stderr," \ n ");' để ngăn chặn một dòng mới đi tới 'stderr' khi không có đầu vào nào được đưa ra. –
@DavidC.Rankin: Tôi nghĩ đó là một ý kiến hay. Tuy nhiên, khi nó đứng, nó xuất ra một dòng mới khi không có đối số nào có cùng cách với 'echo'. –
Vâng, tôi cũng thấy điều đó, nhưng tôi nghĩ nếu chúng tôi đang làm một cái gì đó tùy chỉnh, chúng tôi có thể làm cho nó hoạt động tốt hơn :) Tôi đã thử nghiệm cả hai cách, và tôi thích chặn dòng mới trong trường hợp không có đầu vào. Những người khác có thể thích dòng trống. –