ระดับเชลล์ระบุระดับของเชลล์ย่อยในเชลล์ที่ซ้อนกัน
Bash man - ระดับเชลล์ SHLVL
SHLVL - เพิ่มขึ้นหนึ่งครั้งทุกครั้งที่อินสแตนซ์ใหม่ของ Bash เริ่มต้นขึ้น
- นี่เป็นจุดประสงค์ที่จะนับว่าเปลือก Bash ของคุณอยู่ลึกเพียงใด
อย่างที่คุณเห็นนี่
เมื่อbashรันตัวเองระดับ bash shell จะสูงกว่าใน 1
การเรียกแบบเรียกซ้ำเพื่อทุบตีต่อไปนี้:
$ echo "bash haha" > haha
$ bash haha
รับข้อความนี้เป็นระยะ:
bash: คำเตือน: ระดับเชลล์ (1,000) สูงเกินไปตั้งค่าเป็น 1
ความหมายของข้อผิดพลาดด้านบนคือทุบตีที่เรียกตัวเองว่า 1,000 ครั้ง
อีกตัวอย่างหนึ่งที่ตัวแปร $ SHLVL ติดตามระดับการซ้อนของเชลล์:
$ echo $SHLVL
1
$ bash
$ echo $SHLVL
2
$ exit
$ echo $SHLVL
1
Makefileเนื่องจากวิธีการและสถานที่ (ภายในifneqข้อ) ผมทำงานคำสั่งที่จะใช้ผมต้องเรียกใช้คำสั่งภายในหนึ่งใช้vagrant ssh -c&&บางทีนี่อาจช่วยใครซักคน