ทำไมคุณต้องใส่ bin/bash ที่จุดเริ่มต้นของไฟล์สคริปต์ – bash

Thami Khun Txng Si Bin Bash Thi Cud Reim Tn Khxng Fil Skhript Bash



เมื่อเขียนสคริปต์ในภาษา Bash เป็นเรื่องปกติที่จะเริ่มต้นไฟล์ด้วยบรรทัด #!/bin/bash บรรทัดนี้เรียกว่าบรรทัด shebang และเป็นองค์ประกอบสำคัญของสคริปต์ Bash หากต้องการอ่านเพิ่มเติมเกี่ยวกับบรรทัดนี้ โปรดอ่านคู่มือนี้

bin/bash ใน Bash Script คืออะไร

คำว่า 'bin/bash' ในสคริปต์ Bash หมายถึงตำแหน่งของ Bash shell ที่เรียกใช้งานได้บนระบบ ในระบบปฏิบัติการที่คล้าย Unix โดยทั่วไปไดเร็กทอรี 'bin' จะมีไฟล์เรียกทำงาน รวมถึงเชลล์ Bash shell เป็นหนึ่งในเชลล์ที่ใช้มากที่สุดในโลกของ Unix และโดยปกติแล้วไฟล์เรียกทำงานนั้นจะอยู่ในไดเร็กทอรี '/bin' บรรทัด “#!/bin/bash” ที่จุดเริ่มต้นของสคริปต์ Bash เรียกว่า shebang ที่ทำหน้าที่ระบุตัวแปลเชลล์ที่ใช้ในการเรียกใช้สคริปต์







เหตุใดจึงต้องใส่ bin/bash ที่จุดเริ่มต้นของไฟล์สคริปต์

บรรทัด shebang ใช้เพื่อระบุที่อยู่ของล่ามที่ควรใช้เพื่อรันสคริปต์ ดังนั้นในกรณีของ #!/bin/bash สคริปต์จะถูกตีความโดย Bash shell สิ่งนี้มีความสำคัญเนื่องจากระบบปฏิบัติการที่แตกต่างกันมีการติดตั้งเชลล์ที่แตกต่างกัน และสคริปต์เดียวกันอาจไม่ทำงานตามที่คาดหวังในทุกระบบ เว้นแต่จะระบุล่ามที่ถูกต้อง



โดยการรวมบรรทัด shebang คุณมั่นใจได้ว่าสคริปต์จะถูกดำเนินการโดยเชลล์ที่ถูกต้อง โดยไม่คำนึงถึงสภาพแวดล้อมที่เรียกใช้ สิ่งนี้ช่วยให้มั่นใจในความเข้ากันได้และการพกพาของสคริปต์ ทำให้ง่ายต่อการแชร์และใช้ซ้ำในระบบต่างๆ



นอกจากนี้ บรรทัด shebang ยังทำให้สคริปต์เรียกใช้งานได้ ทำให้สามารถเรียกใช้ได้โดยตรงจากบรรทัดคำสั่ง หากไม่มีบรรทัด shebang คุณจะต้องระบุล่ามด้วยตนเองทุกครั้งที่เรียกใช้สคริปต์ ซึ่งอาจน่าเบื่อและเกิดข้อผิดพลาดได้ง่าย





คุณสามารถเรียกใช้ไฟล์ Bash โดยไม่มี /bin/bash ได้หรือไม่

ได้ คุณสามารถเรียกใช้สคริปต์ Bash โดยไม่ต้องระบุ /bin/bash เป็นล่าม เชลล์ของระบบเริ่มต้นซึ่งโดยปกติจะเป็น /bin/sh ในระบบส่วนใหญ่ สามารถใช้เพื่อเรียกใช้สคริปต์ Bash แต่ถ้าไม่ได้ตั้งค่าเชลล์เริ่มต้นเป็น bash คุณอาจไม่สามารถเรียกใช้ได้ อย่างไรก็ตาม หากสคริปต์ของคุณขึ้นต้นด้วยบรรทัด #!/bin/bash ระบบจะใช้ล่าม /bin/bash เพื่อเรียกใช้สคริปต์ โดยไม่คำนึงว่าเชลล์เริ่มต้นถูกตั้งค่าเป็นเท่าใด

บทสรุป

บรรทัด shebang #!/bin/bash เป็นส่วนประกอบที่สำคัญของสคริปต์ Bash เนื่องจากระบุล่ามที่จะใช้และทำให้สคริปต์ทำงาน โดยรวมบรรทัดนี้ที่จุดเริ่มต้นของไฟล์สคริปต์ของคุณ คุณจะมั่นใจได้ว่าสคริปต์ของคุณจะทำงานตามที่คาดไว้บนระบบใดๆ และจะเรียกใช้และแชร์ได้ง่าย