Tôi biết làm thế nào để chuyển hướng đầu ra và làm thế nào để ngăn chặn chúng trong bash. Bây giờ, giả sử tôi vô tình quên gắn phần chuyển hướng đầu ra vào lệnh (ví dụ 2>&1hoặc > /tmp/mystdout) và quá trình nền của tôi đã chạy được một lúc, tôi vẫn có thể thay đổi thành nơi stdoutvà stderrđang được ghi vào? Tôi thực sự muốn không giết và khởi động lại ứng dụng.
Để cụ thể hơn như được hỏi bởi Gilles trong bình luận của mình, tôi muốn tìm hiểu về nó trong các tình huống cụ thể:
- tập tin đầu ra sai
- quên chuyển hướng
stderrđếnstdout
Hoặc là một sự kết hợp của cả hai
Ví dụ: tôi có Apache đang chạy và tôi có thể thấy các mô tả tệp:
/proc/8019/fd/0 -> /dev/null
/proc/8019/fd/1 -> /dev/null
/proc/8019/fd/2 -> /var/log/apache2/error.log