ในทุบตี
ฉันมีปัญหาในการพิจารณาสิ่งที่ฉันควรใช้?
สคริปต์ของฉันทั้งหมดใช้ ">> / dev / stderr"
ที่ bash prompt, ถ้าฉันลอง:
echo test >>/dev/stderrwork
echo test >> /dev/stderrwork
echo test >/dev/stderrworks
echo test > /dev/stderrworks
echo test >>&2ล้มเหลว!
echo test >> &2ล้มเหลว!
echo test >&2ทำงาน
echo test > &2ล้มเหลว!
ฉันยินดีที่จะเปลี่ยนสคริปต์>&2ทั้งหมดเป็น
ดูเหมือนว่าจะมีผลกระทบอย่างมากกับ ssh (หลังจากsu SomeUser) ที่>>/dev/stderrจะไม่ทำงานเลย (ปฏิเสธสิทธิ์) เพียง>&2จะทำงาน
suที่ปัญหาเกิดขึ้นอัปเดตคำถาม
su -c 'some command', คำสั่งนั้นดำเนินการโดย/bin/sh, ไม่bash, ดังนั้นพฤติกรรมเฉพาะ bash (เช่นการจำลอง/dev/stderrเพื่อการเปลี่ยนเส้นทางเมื่อไม่มี) ไม่รับประกันว่าจะมีอยู่