ในคู่มือ GNU Makefile นั้น กล่าวถึงคำนำหน้าเหล่านี้
หากมีการจัดเตรียม. ONESHELL จะมีการตรวจสอบเฉพาะบรรทัดแรกของสูตรสำหรับอักขระนำหน้าพิเศษ ('@', '-' และ '+')
คำนำหน้าเหล่านี้ทำอะไรและพวกเขาพูดถึงที่ไหน
ในคู่มือ GNU Makefile นั้น กล่าวถึงคำนำหน้าเหล่านี้
หากมีการจัดเตรียม. ONESHELL จะมีการตรวจสอบเฉพาะบรรทัดแรกของสูตรสำหรับอักขระนำหน้าพิเศษ ('@', '-' และ '+')
คำนำหน้าเหล่านี้ทำอะไรและพวกเขาพูดถึงที่ไหน
คำตอบ:
พวกเขาควบคุมพฤติกรรมของการทำสำหรับบรรทัดคำสั่งที่ติดแท็ก:
@
ไม่แสดง 'echo' ปกติของคำสั่งที่เรียกใช้งาน
-
หมายถึงเพิกเฉยสถานะการออกของคำสั่งที่ดำเนินการ (โดยปกติสถานะการออกที่ไม่เป็นศูนย์จะหยุดส่วนหนึ่งของการสร้าง)
+
หมายถึง 'รันคำสั่งนี้ภายใต้make -n
' (หรือ 'make -t' หรือ 'make -q') เมื่อคำสั่งไม่ได้ดำเนินการตามปกติ ดูข้อมูลจำเพาะ POSIX สำหรับmake
และ§9.3ของคู่มือทำ GNU
+
สัญกรณ์เป็นลักษณะทั่วไป (POSIX-มาตรฐาน) ของพฤตินัย (ไม่ได้มาตรฐาน) กลไกบรรทัดคำสั่งที่มี${MAKE}
หรือจะดำเนินการภายใต้$(MAKE)
make -n
( @
มีการกล่าวถึงใน§5.2ของคู่มือทำ GNU; -
อธิบายไว้ใน§5.5และ§5.7.1กล่าวถึงการใช้งาน+
)
@
ป้องกันไม่ให้บรรทัดคำสั่งสะท้อนออกไปที่คอนโซล คุณสามารถทำได้ทั่วโลกด้วย-s
หรือ--keep-silent
-
บอกให้ทำต่อไปแม้ว่าคำสั่งจะล้มเหลวด้วยเหตุผลบางอย่าง คุณสามารถทำได้ทั่วโลกผ่านการ-i
ตั้งค่าสถานะ (หรือ--ignore-errors
)
+
ฉันไม่คุ้นเคยก่อนที่คุณจะถาม ในฐานะที่อยู่ใกล้กับที่ผมสามารถบอกมันขัดแย้งกับผลกระทบของ-n
, -t
และ-q
ทั้งหมดซึ่งโดยทั่วไปจะบอกให้ไม่จริงเรียกใช้คำสั่ง ดังนั้นแถว+
ที่ด้านหน้าจะวิ่งต่อไป
ถ้าคุณอ่านอย่างเป็นทางการให้ Gnu คู่มือพวกเขาจะกล่าวถึงในบทที่ 5 ในสำเนาเก่าของฉันของคู่มือที่เป็นบทที่ "คำสั่ง" แต่ตอนนี้ดูเหมือนคำว่า "สูตร"