คำถามติดแท็ก exit-status

ใช้แท็กนี้หากคำถามของคุณวนเวียนอยู่กับการกำหนดหรือใช้สถานะการออก (โค้ดส่งคืน) ของคำสั่ง ไวยากรณ์ทั่วไปเกี่ยวข้องกับ $? ตัวแปรและ && และ || สัญลักษณ์

7
บันทึกรหัสทางออกของคำสั่งคล้ายกับคำสั่งเวลา
การใช้ time sleep 1 อัตราผลตอบแทน: $ time sleep 1 real 0m1.005s user 0m0.001s sys 0m0.001s มีคำสั่งที่ฉันสามารถใช้พิมพ์รหัสทางออกsleepหรือคำสั่งใดที่ฉันต้องการเรียกใช้หรือไม่ บางสิ่งที่ชอบ: $ log-exit-code sleep 1 อาจเพียงพอหรือไม่ sleep 1 && echo "$?"
10 exit  exit-status 

2
การมอบหมายเป็นเหมือนคำสั่งที่มีสถานะการออกยกเว้นเมื่อมีการทดแทนคำสั่ง?
ดูตัวอย่างต่อไปนี้และผลลัพธ์ใน POSIX เชลล์: false;echo $?หรือfalse || echo 1:1 false;foo="bar";echo $?หรือfoo="bar" && echo 0:0 foo=$(false);echo $?หรือfoo=$(false) || echo 1:1 foo=$(true);echo $?หรือfoo=$(true) && echo 0:0 ตามที่ระบุไว้โดยคำตอบที่ได้รับการโหวตสูงสุดที่/programming/6834487/what-is-the-variable-in-shell-scripting : $? ถูกใช้เพื่อค้นหาค่าส่งคืนของคำสั่งที่เรียกใช้งานครั้งสุดท้าย นี่อาจเป็นความเข้าใจผิดเล็กน้อยในกรณีนี้ดังนั้นขอนิยาม POSIX ซึ่งอ้างถึงในโพสต์จากกระทู้นั้น: ? ขยายเป็นสถานะทางออกทศนิยมของไปป์ไลน์ล่าสุด (ดูที่ Pipelines) ดังนั้นดูเหมือนว่าการมอบหมายตัวเองนับเป็นคำสั่ง (หรือมากกว่าส่วนท่อ) ที่มีค่าศูนย์ทางออก แต่จะใช้ก่อนที่ด้านขวาของการมอบหมาย (เช่นการทดแทนคำสั่งเรียกในตัวอย่างของฉันที่นี่) ฉันเห็นว่าพฤติกรรมนี้เหมาะสมจากมุมมองเชิงปฏิบัติ แต่ดูเหมือนว่าฉันค่อนข้างผิดปกติที่งานมอบหมายจะนับตามลำดับนั้น อาจจะชัดเจนมากกว่านี้ทำไมมันแปลกสำหรับฉันลองสมมติว่าการบ้านเป็นหน้าที่: ASSIGNMENT( VARIABLE, VALUE ) แล้วfoo="bar"จะเป็น ASSIGNMENT( "foo", "bar" …

2
สถานะการส่งคืนของการกำหนดตัวแปรกำหนดอย่างไร?
ฉันได้เห็นโครงสร้างในสคริปต์เช่นนี้ if somevar="$(somecommand 2>/dev/null)"; then ... fi เอกสารนี้อยู่ที่ไหนสักแห่ง? สถานะการส่งคืนของตัวแปรถูกกำหนดอย่างไรและเกี่ยวข้องกับการทดแทนคำสั่งอย่างไร (ตัวอย่างเช่นฉันจะได้ผลลัพธ์เดียวกันด้วยif echo "$(somecommand 2>/dev/null)"; then)

1
สาเหตุ `น้อยกว่า 'เพื่อออกด้วยรหัสสถานะที่ไม่ใช่ศูนย์
ฉันต้องการโครงสร้างคำสั่งต่อไปนี้: command && check-status | less && followup-command lessนี้จะหยุดการดำเนินการขณะที่ผู้ใช้มีความสัมพันธ์กับ ผู้ใช้สามารถบังคับlessให้ออกจากสถานะที่ไม่เป็นศูนย์เพื่อป้องกันไม่ให้followup-commandทำงานได้อย่างไร ฉันกำลังใช้ less 458 (POSIX regular expressions)

2
ความแตกต่างระหว่างการไม่ใช้งาน vs ปิดใช้งานและบริการที่เปิดใช้งาน vs
ฉันสับสนโดยแนวคิดของการเปิดใช้งานหรือใช้งานและปิดการใช้งานหรือไม่ได้ใช้งาน มีคนอธิบายได้ไหม

2
วิธีการวนซ้ำ 3 ครั้งในสคริปต์ทุบตีเมื่อนักเทียบท่าดันล้มเหลว?
ฉันมีสคริปต์ทุบตีซึ่งเพียงนักเทียบท่าดันภาพ: docker push $CONTAINER_IMAGE:latest ฉันต้องการวนซ้ำ 3 ครั้งเมื่อสิ่งนี้ล้มเหลว ฉันจะทำสิ่งนี้ได้อย่างไร
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.