เหตุใดตัวแปรพรอมต์ของ bash จึงเรียกว่า PS1


49

ตัวแปรสภาพแวดล้อมสำหรับพรอมต์ bash ถูกเรียกPS1(โดยปกติแล้วจะตั้งค่าใน ~ / .bashrc) PS1 หมายถึงอะไร มี PS2 หรือไม่

คำตอบ:


58

PS1 ย่อมาจาก "Prompt String One" หรือ "Prompt Statement One" ซึ่งเป็นสตริงพรอมต์แรก (ที่คุณเห็นที่บรรทัดคำสั่ง)

ใช่มี PS2 และอีกมากมาย! โปรดอ่านนี้บทความและ Arch วิกิพีเดียและแน่นอนคู่มือทุบตีอ้างอิง


24
สั้น ๆ PS2 สำหรับคำสั่งอย่างต่อเนื่อง (ที่ใช้มากกว่าหนึ่งบรรทัด), PS3 สำหรับการป้อนข้อมูลลงในสคริปต์การทำงานและ PS4 สำหรับการติดตาม / การดีบัก
Ansgar Esztermann

2
@ AnsgarEsztermann ความคิดเห็นของคุณอาจเป็นคำตอบเช่นกัน (ซึ่งฉันจะลงคะแนน)
maxschlepzig

1
เรื่อง: $ PS3 ตัวอย่างของการใช้งานคือการเปลี่ยนพรอมต์ของselectคำสั่งโดยตั้งค่า PS3 เป็นอันดับแรกเช่น PS3="Select by typing the number: "
Peter.O

24

จากการถอดความเล็กน้อยจากคู่มืออ้างอิง Bash

PS1 สตริงพรอมต์หลัก ค่าเริ่มต้นคือ '\ s- \ v \ $'

PS2 สตริงพรอมต์ที่สอง เช่นสำหรับคำสั่งต่อเนื่อง (ที่ใช้มากกว่าหนึ่งบรรทัด) ค่าเริ่มต้นคือ '>'

PS3 ค่าของตัวแปรนี้ใช้เป็นพรอมต์สำหรับคำสั่ง select เช่นสำหรับการป้อนข้อมูลลงในสคริปต์การทำงาน หากไม่ได้ตั้งค่าตัวแปรนี้คำสั่ง select จะแสดงข้อความ '#? '

PS4 ค่าเป็นพรอมต์ที่พิมพ์ออกมาก่อนที่บรรทัดคำสั่งจะถูกสะท้อนเมื่อตั้งค่าตัวเลือก -x อักขระตัวแรกของ PS4 ถูกจำลองแบบหลายครั้งตามความจำเป็นเพื่อบ่งบอกถึงทิศทางหลายระดับ ค่าเริ่มต้นคือ '+'

PS1 และ PS2 มาจาก sh ดั้งเดิม PS3 และ PS4 ถูกเพิ่มเข้ามาเป็นส่วนหนึ่งของการทุบตี

ดูตัวอย่างได้ที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.