Tôi có tập lệnh bash chạy chương trình có tham số. Chương trình đó xuất ra một số trạng thái (làm điều này, làm điều đó ...). Không có tùy chọn nào cho chương trình này yên lặng. Làm thế nào tôi có thể ngăn chặn các kịch bản hiển thị bất cứ điều gì?Với Bash Scripting, làm thế nào tôi có thể chặn tất cả đầu ra từ một lệnh?
Tôi đang tìm kiếm thứ gì đó giống như cửa sổ "tắt tiếng".
Note rằng '&>' là đặc biệt để bash (và có thể C shells); Vỏ Korn và Bourne yêu cầu 2>/dev/null hoặc 2> & 1 (để gửi stderr đến cùng một vị trí như stdout). Vỏ Korn dường như giải thích '&>' là "chạy các công cụ lên đến & ở chế độ nền, sau đó thực hiện chuyển hướng i/o trên một lệnh trống". –
Lưu ý rằng một số lệnh ghi trực tiếp vào thiết bị đầu cuối thay vì đầu ra/lỗi chuẩn. Để kiểm tra, hãy đặt 'echo foo> $ (tty)' trong một tập lệnh và chạy './test.sh &>/dev/null' - Đầu ra vẫn được in tới thiết bị đầu cuối. Tất nhiên đây không phải là một vấn đề nếu bạn đang viết một kịch bản mà không sử dụng các lệnh như vậy. – l0b0
Tuyệt vời! > nul 2> nul hoạt động cho Cygwin trong Windows! – yang