นี่อาจเป็นสถานที่ที่ดีที่สุดในการถามคำถามในรูปแบบที่ง่ายที่สุด ฉันกำลังเขียนสคริปต์ซึ่งใช้คำสั่งผลลัพธ์และวางลงในตัวแปร หลังจากดีบักบางฉันพบคำสั่งเมื่อข้อผิดพลาดไม่ได้ stdout แต่ไปยังคอนโซล (หรือผนัง) ดูตัวอย่างด้านล่าง:
เมื่อคำสั่งรันได้สำเร็จ
root@local# apcaccess status
APC : 700
VERSION : xxxxx
BATTSTAT : AC
เมื่อคำสั่งผิดพลาด
root@local# apcaccess status
apcupsd @ localhost: Connection Refused.
root@local# apcaccess status | grep -i version
apcupsd @ localhost: Connection Refused.
ฉันสังเกตเห็นเมื่อฉันพยายามที่จะไพพ์คำสั่งผ่านสถานะ apcaccess ของ grep ' grep -i version 'ฉันจะได้รับหมายเลขเวอร์ชั่นในการดำเนินการที่ประสบความสำเร็จ แต่ในระบบที่ข้อผิดพลาดเกิดขึ้นฉันจะได้รับข้อความแสดงข้อผิดพลาด ฉันเชื่อว่ามันไม่ผ่านมาตรฐาน
คำถามคือฉันจะบังคับให้ส่งออกไปยัง goto stdout ได้อย่างไร