เพียงเพื่อขยายคำตอบของ Oli (และเพื่อให้ฉันมีคั่นหน้าสำหรับสัญลักษณ์สั้น ๆ เหล่านั้น):
bash prompt ( stefano@linux:~$
) เป็นเพียงหนึ่งในสองพรอมต์ที่คุณอาจเห็น:
PS1 : พรอมต์เริ่มต้นที่คุณเห็นเมื่อคุณเปิดเชลล์
PS1
มันคุ้มค่าถูกเก็บไว้ในตัวแปรสภาพแวดล้อมที่เรียกว่า หากต้องการดูค่าของมันให้พิมพ์
echo $PS1
สิ่งนี้จะให้สิ่งที่คุณต้องการ
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$
หากต้องการเปลี่ยนคุณสามารถตั้งค่าใหม่สำหรับตัวแปร:
export PS1="\u > "
สิ่งนี้จะส่งผลให้เกิดการแจ้งเตือนเช่นนี้:
stefano >
PS2 : เป็นพรอมต์ที่สองของคุณ สิ่งนี้จะปรากฏขึ้นเมื่อคำสั่งไม่เสร็จสิ้น พิมพ์echo "asd
และกด Enter พร้อมต์รองจะให้คุณป้อนบรรทัดเพิ่มเติมจนกว่าคุณจะปิดเครื่องหมายจุลภาคคว่ำ
PS3เป็นพรอมต์ที่ใช้สำหรับselect
(2)
PS4เป็นพรอมต์ที่ใช้สำหรับ สแต็คร่องรอย (ค่าเริ่มต้น: +
)
หากต้องการทำการเปลี่ยนแปลงอย่างถาวรคุณจะต้องเพิ่มส่วนท้าย.bash_profile
(หรือ.bashrc
ดูคำถามนี้ ) ในไดเรกทอรีหลักของคุณ
นี่คือรายการย่อที่สมบูรณ์แบบมากหรือน้อยที่คุณสามารถใช้เมื่อเขียนสิ่งเหล่านี้:
\a
ตัวละคร 'เบลล์'
\A
เวลา 24 ชั่วโมง
\d
วันที่ (เช่นอ. 21 ธ.ค. )
\e
ตัวละคร 'หลบหนี'
\h
ชื่อโฮสต์ (สูงสุด "." แรก)
\H
ชื่อโฮสต์
\j
จำนวนงานที่กำลังทำงานอยู่ (ps)
\l
tty ปัจจุบัน
\n
ฟีดบรรทัด
\t
เวลา (hh: mm: ss)
\T
เวลา (hh: mm: ss, รูปแบบ 12 ชั่วโมง)
\r
การคืนสินค้า
\s
เชลล์ (เช่น bash, zsh, ksh .. )
\u
ชื่อผู้ใช้
\v
รุ่นทุบตี
\V
สตริงการปล่อย Bash แบบเต็ม
\w
ไดเรกทอรีการทำงานปัจจุบัน
\W
ส่วนสุดท้ายของไดเรกทอรีการทำงานปัจจุบัน
\!
ดัชนีปัจจุบันในประวัติศาสตร์
\#
ดัชนีคำสั่ง
\$
A "#" ถ้าคุณรูทมิฉะนั้น "$"
\\
แบ็กสแลชตัวอักษร
\@
เวลา (รูปแบบ 12 ชม. พร้อม am / pm)
แน่นอนคุณสามารถแทรกสตริงตัวอักษรใด ๆ และคำสั่งใด ๆ :
export PS1="\u \$(pwd) > "
โดย$(pwd)
ที่แทนที่ "เอาต์พุตของ" pwd
- หากการทดแทนคำสั่งถูก Escape เช่นเดียวกับ
\$(pwd)
มันจะถูกประเมินทุกครั้งที่มีการแจ้งเตือนไม่เช่น$(pwd)
นั้นจะเป็นการประเมินเพียงครั้งเดียวเมื่อเริ่มทุบตี
หากคุณต้องการให้พรอมต์แสดงคุณสมบัติสีคุณสามารถใช้รหัสสีของ bash เพื่อทำเช่นนั้นได้ รหัสประกอบด้วยสามส่วน:
40;33;01
แต่ละส่วนสามารถละเว้นได้โดยเริ่มจากด้านซ้าย เช่น "1" หมายถึงตัวหนา "1; 31" หมายถึงตัวหนาและสีแดง และคุณจะได้รับ terminal ของคุณพิมพ์สีโดยการหลบหนีการเรียนการสอนด้วยและลงท้ายด้วย\33[
m
33 หรือ 1B ในเลขฐานสิบหกคือเครื่องหมาย ASCII "ESCAPE" (อักขระพิเศษในชุดอักขระ ASCII) ตัวอย่าง:
"\33[1;31mHello World\33[m"
พิมพ์ "Hello World" ด้วยสีแดงสดใส
export PS1="\n___"