Trong bash.
Tôi đang gặp một số khó khăn để xác định những gì tôi nên sử dụng?
tất cả các tập lệnh của tôi sử dụng ">> / dev / stderr"
tại bash prompt, nếu tôi thử:
echo test >>/dev/stderrcông
echo test >> /dev/stderrtrình
echo test >/dev/stderrhoạt
echo test > /dev/stderrđộng công trình hoạt động
echo test >>&2FAILS!
echo test >> &2FAILS! FAILS
echo test >&2hoạt động
echo test > &2!
Tôi sẵn sàng thay đổi tất cả các kịch bản của tôi để >&2.
Nó dường như cũng có ảnh hưởng lớn đến ssh (sau su SomeUser) khi >>/dev/stderrhoàn toàn không hoạt động (quyền bị từ chối), chỉ >&2hoạt động.
susự cố xảy ra, hãy cập nhật câu hỏi
su -c 'some command'lệnh đó được điều hành bởi /bin/sh, không bash, vì vậy, hành vi cụ thể của bash (như mô phỏng /dev/stderrcho mục đích chuyển hướng khi không khả dụng) không được đảm bảo có mặt.