วันนี้ Bash เป็นเชลล์เริ่มต้นในลีนุกซ์รุ่นใหม่ส่วนใหญ่ (ถ้าไม่ใช่ทั้งหมด) อย่างไรก็ตาม คุณอาจสังเกตเห็นว่าสีข้อความในเทอร์มินัลและเนื้อหาพร้อมท์อาจแตกต่างจาก distro ที่หนึ่งไปยังอีกที่หนึ่ง
แนะนำให้อ่าน:ข> 5 โอเพ่นซอร์สเชลล์ที่ใช้บ่อยที่สุดสำหรับ Linux
ในกรณีที่คุณสงสัยว่าจะปรับแต่งสิ่งนี้อย่างไรเพื่อให้สามารถเข้าถึงได้ง่ายยิ่งขึ้นหรือเพียงแค่ตั้งใจ โปรดอ่านต่อไป – ในบทความนี้เราจะอธิบายวิธีการทำอย่างนั้น
ตัวแปรสภาพแวดล้อม PS1 Bash
พรอมต์คำสั่งและลักษณะที่ปรากฏของเทอร์มินัลถูกควบคุมโดยตัวแปรสภาพแวดล้อมที่เรียกว่า PS1
. ตาม ทุบตี หน้าคน PS1 แสดงถึงสตริงพร้อมท์หลักซึ่งจะแสดงเมื่อเชลล์พร้อมที่จะอ่านคำสั่ง
เนื้อหาที่อนุญาตใน PS1 ประกอบด้วยอักขระพิเศษที่ใช้ Escape แบ็กสแลชหลายตัวซึ่งมีความหมายอยู่ใน PROMPTING ของหน้าคน
เพื่อแสดงเนื้อหาปัจจุบันของ PS1
ในระบบของเรา (กรณีของคุณอาจแตกต่างกันบ้าง):
$ echo $PS1 [\[email protected]\h \W]$
ตอนนี้เราจะอธิบายวิธีปรับแต่ง PS1 ตามความต้องการของเรา
การปรับแต่งรูปแบบ PS1
ตามส่วน PROMPTING ในหน้า man นี่คือความหมายของอักขระพิเศษแต่ละตัว:
\u:
ชื่อผู้ใช้ ของผู้ใช้ปัจจุบัน\h:
ชื่อโฮสต์ จนถึงจุดแรก (.) ในชื่อโดเมนที่มีคุณสมบัติครบถ้วน\W:
ชื่อฐาน ของไดเร็กทอรีการทำงานปัจจุบัน โดยมี $HOME ย่อด้วยตัวหนอน (~) .\$:
หากผู้ใช้ปัจจุบันเป็นรูท ให้แสดง # , $ อย่างอื่น
ตัวอย่างเช่น เราอาจต้องการพิจารณาเพิ่ม \!
หากเราต้องการแสดงหมายเลขประวัติของคำสั่งปัจจุบัน หรือ \H
หากเราต้องการแสดง FQDN แทนชื่อเซิร์ฟเวอร์แบบสั้น
ในตัวอย่างต่อไปนี้ เราจะนำเข้าทั้งสองในสภาพแวดล้อมปัจจุบันของเราโดยดำเนินการคำสั่งนี้:
PS1="[\[email protected]\H \W \!]$"
เมื่อคุณกด Enter คุณจะเห็นว่าเนื้อหาพร้อมท์เปลี่ยนแปลงดังที่แสดงด้านล่าง เปรียบเทียบพรอมต์ก่อนและหลังรันคำสั่งด้านบน:
ตอนนี้ ไปต่ออีกขั้นแล้วเปลี่ยนสีของ ผู้ใช้ และ ชื่อโฮสต์ ใน command prompt – ทั้งข้อความและพื้นหลังโดยรอบ
ที่จริงแล้ว เราปรับแต่งพรอมต์ได้ 3 ด้าน:
รูปแบบข้อความ | สีพื้นหน้า (ข้อความ) | สีพื้นหลัง |
0:ข้อความปกติ | 30:สีดำ | 40:สีดำ |
1:ตัวหนา | 31:สีแดง | 41:สีแดง |
4:ข้อความที่ขีดเส้นใต้ | 32:สีเขียว | 42:สีเขียว |
33:สีเหลือง | 43:สีเหลือง | |
34:สีน้ำเงิน | 44:สีน้ำเงิน | |
35:สีม่วง | 45:สีม่วง | |
36:สีฟ้า | 46:สีฟ้า | |
37:สีขาว | 47:สีขาว |
เราจะใช้ \e
อักขระพิเศษที่จุดเริ่มต้นและ m
ในตอนท้ายเพื่อระบุว่าสิ่งต่อไปนี้เป็นลำดับสี
ในลำดับนี้ ค่าสามค่า (พื้นหลัง , รูปแบบ และ เบื้องหน้า ) คั่นด้วยเครื่องหมายจุลภาค (หากไม่มีค่าใด ๆ ให้ถือว่าค่าเริ่มต้น)
แนะนำให้อ่าน:ข> เรียนรู้การเขียนสคริปต์ Bash Shell ใน Linux
นอกจากนี้ เนื่องจากช่วงค่าต่างกัน ไม่สำคัญว่าช่วงใด (พื้นหลัง , รูปแบบ หรือ เบื้องหน้า ) คุณระบุก่อน
ตัวอย่างเช่น PS1
. ต่อไปนี้ จะทำให้ข้อความแจ้งปรากฏเป็นสีเหลือง ข้อความที่ขีดเส้นใต้ด้วย สีแดง พื้นหลัง:
PS1="\e[41;4;33m[\[email protected]\h \W]$ "
ดีเท่าที่เห็น การปรับแต่งนี้จะคงอยู่สำหรับเซสชันผู้ใช้ปัจจุบันเท่านั้น หากคุณปิดเทอร์มินัลหรือออกจากเซสชัน การเปลี่ยนแปลงจะสูญหายไป
ในการทำการเปลี่ยนแปลงเหล่านี้อย่างถาวร คุณจะต้องเพิ่มบรรทัดต่อไปนี้ใน ~/.bashrc
หรือ ~/.bash_profile
ขึ้นอยู่กับการกระจายของคุณ:
PS1="\e[41;4;33m[\[email protected]\h \W]$ "
อย่าลังเลที่จะเล่นกับสีต่างๆ เพื่อค้นหาสิ่งที่ดีที่สุดสำหรับคุณ
สรุป
ในบทความนี้ เราได้อธิบายวิธีปรับแต่งสีและเนื้อหาของพรอมต์ Bash ของคุณ หากคุณมีคำถามหรือข้อเสนอแนะเกี่ยวกับโพสต์นี้ โปรดใช้แบบฟอร์มความคิดเห็นด้านล่างเพื่อติดต่อเรา เราหวังว่าจะได้รับการติดต่อจากคุณ!