สิ่งที่ชื่อกล่าว ฉันไม่มีโชคมากในการค้นหาเอกสารที่เหมาะสมเพื่อดูว่า -xe ทำอะไรในกรณีการใช้งานต่อไปนี้:
#!/bin/bash -xe
พารามิเตอร์เหล่านั้นทำอะไรและอยู่ที่ไหนในเอกสาร
สิ่งที่ชื่อกล่าว ฉันไม่มีโชคมากในการค้นหาเอกสารที่เหมาะสมเพื่อดูว่า -xe ทำอะไรในกรณีการใช้งานต่อไปนี้:
#!/bin/bash -xe
พารามิเตอร์เหล่านั้นทำอะไรและอยู่ที่ไหนในเอกสาร
คำตอบ:
หากคุณอ่าน man page สำหรับbash
คุณจะพบสิ่งต่อไปนี้ที่ด้านบนของOPTIONS
ส่วน:
ตัวเลือกเชลล์อักขระเดี่ยวทั้งหมดจัดทำเอกสารใน คำอธิบายของคำสั่ง set builtin สามารถใช้เป็นตัวเลือกเมื่อ เชลล์ถูกเรียกใช้ นอกจากนี้ทุบตีตีความตัวเลือกต่อไปนี้ เมื่อมันถูกเรียก ...
และถ้าคุณอ่านเอกสารสำหรับset
คำสั่งในภายหลังในหน้าคนคุณจะพบ:
-e ออกทันทีถ้าไปป์ไลน์ (ซึ่งอาจประกอบด้วย คำสั่งแบบง่ายเดียว) คำสั่ง subshell ที่อยู่ในวงเล็บ หรือหนึ่งในคำสั่งที่ดำเนินการโดยเป็นส่วนหนึ่งของรายการคำสั่งที่ล้อมรอบด้วย วงเล็บปีกกา (ดูที่ SHELL GRAMMAR ด้านบน) ออกจากสถานะไม่เป็นศูนย์ -x หลังจากขยายแต่ละคำสั่งง่าย ๆ สำหรับคำสั่ง case และ คำสั่งเลือกคำสั่งหรือเลขคณิตสำหรับคำสั่งแสดง มูลค่าที่เพิ่มขึ้นของ PS4 ตามด้วยคำสั่งและ อาร์กิวเมนต์ที่ขยายหรือรายการคำที่เกี่ยวข้อง
กล่าวอีกนัยหนึ่ง-e
ทำให้การออกจากเชลล์ทันทีเมื่อใดก็ตามที่บางสิ่งส่งกลับข้อผิดพลาด (ซึ่งมักใช้ในเชลล์สคริปต์เป็นกลไกที่ไม่ปลอดภัย) และ-x
เปิดใช้งานการเรียกใช้งานสคริปต์อย่างละเอียดเพื่อให้คุณสามารถเห็นสิ่งที่เกิดขึ้น
พิมพ์สิ่งต่อไปนี้บนคอนโซลของคุณเพื่อรับคำอธิบายของอาร์กิวเมนต์ BASH:
bash -c "help set"
ในการตอบคำถามของคุณ:
-e
ออกทันทีถ้าคำสั่งออกจากสถานะไม่เป็นศูนย์
-x
พิมพ์คำสั่งและอาร์กิวเมนต์ตามที่ดำเนินการ
คุณกำลังคิดถึงสิ่งที่คุณตั้ง -x set -e set -... ? วิ่งhelp set
ให้เหล่านั้น
ที่ไหนที่ดีที่สุดในการอ่านเอกสารเกี่ยวกับพารามิเตอร์ที่ส่งผ่านไปยัง bash เช่น -x และ -e คืออะไร ฉันลองผู้ชายคนนั้นทุบตี แต่ดูเหมือนจะไม่ครอบคลุม
อ่านส่วน OPTIONS ของ basj manpage
ฉันใช้คู่มืออ้างอิง Bash ที่ยอดเยี่ยมเป็นเอกสารแบบครบวงจรสำหรับภาษา Bash ฉันพบว่ามันมีประโยชน์มากกว่าหน้าคน ส่วนที่เกี่ยวข้องกับคุณ (คำอธิบายของสวิตช์ -e, -x สามารถดูได้ที่นี่: set builtin