เทอร์มินัลพรอมต์สับสนหลังจากเปลี่ยนค่า PS1


9

ฉันป้อนคำสั่งในเทอร์มินัลอย่างไม่ระมัดระวังซึ่งควรอยู่ในเชลล์สคริปต์:

export PS1=$PATH:~/drush23/drush/

ตอนนี้ใน terminal ของฉันแทนสิ่งนี้:

ubuntu@ip-10-16-134-18:/home/ubuntu$

ฉันเห็นสิ่งนี้:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/ubuntu/drush23/drush/

และเมื่อฉันเปลี่ยนไดเรกทอรีบรรทัดนี้จะยังคงอยู่เสมอ ... ฉันไม่รู้จะทำอย่างไร

ฉันมี byobu ...

คำตอบ:


13

$PS1เป็นตัวแปรสภาพแวดล้อมที่บอกเชลล์ของคุณถึงวิธีการฟอร์แมตพรอมต์ การเปลี่ยนค่าด้วยexportเช่นเดียวกับที่คุณทำจะใช้กับเซสชันนั้นเท่านั้น เพื่อให้คุณสามารถเปิดเชลล์ใหม่ (ไม่ใช่เชลล์ย่อย) และดูพรอมต์ที่คุ้นเคย

มิฉะนั้นถ้าคุณจริงๆต้องการกลับรวดเร็วของคุณในช่วงนี้เองเพียงแค่รันไฟล์ตั้งค่าเปลือกของคุณ สำหรับผู้ใช้ Bash นั่นคือ:

. ~/.bashrc

ฉันไม่รู้ว่าจะใช้งานได้ (อย่างน้อยโดยไม่ก่อให้เกิดปัญหาอื่น ๆ ) สำหรับ Byobu; แต่คุณสามารถตั้งค่าให้เป็นค่าสติเช่นนี้:

export PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

หรือถ้าคุณไม่ต้องการหรือไม่สามารถแจ้งสีได้สิ่งที่ง่ายกว่าคือ:

export PS1='\u@\h:\w\$ '

โดยที่\uชื่อผู้ใช้ของคุณ\hคือชื่อโฮสต์ของคุณและ\wเป็นเส้นทางแบบเต็ม (ตรรกะ) ของไดเรกทอรีการทำงานปัจจุบันของคุณ


ฉันไม่ทราบว่า $ PS1 ควบคุมว่า ... ขอบคุณ!
Moshe Shaham

เพียงแค่กดใน . ~/.bashrcterminal มันจะรีเซ็ตPS1ตัวแปรและคุณควรกลับไปที่พรอมต์ของคุณ
souravc

@souravc คุณแน่ใจหรือว่าจะไม่ทำให้เกิดปัญหากับ OP เขาใช้ Byobu
Yatharth Agarwal

@YatharthROCK ฉันไม่คิดว่ามันจะทำให้เกิดปัญหาใด ๆ สิ่งที่คุณคาดหวังว่าเป็นปัญหาที่เป็นไปได้?
souravc

@souravc ขออภัยไม่ได้คิดตรง
Yatharth Agarwal

1

คุณสามารถตั้งค่าPS1ที่เหมาะสมสำหรับเซสชันเทอร์มินัลนี้โดยใช้:

export PS1=$'\h:\w\$'

ค่าเก่าควรได้รับการคืนค่าหลังจากปิดและรีสตาร์ท Terminal การรีบู๊ตและอื่น ๆ


0

ฉันมีปัญหาเดียวกันนี้ ฉันใช้ PS1 เพื่อตั้งค่าพรอมต์ให้เป็น "ทดสอบ" ..

ต่อมาฉันไม่สามารถกลับไปที่พรอมต์สีเริ่มต้น

อย่างไรก็ตามฉันตรวจสอบคำตอบในเว็บไซต์นี้ & ฉันต้องตรวจสอบว่าฉันใช้เชลล์ตัวไหนอยู่

ฉันลอง $ SHELL และได้รับการรีเซ็ตเป็นค่าพร้อมท์สีเริ่มต้น

"$ SHELL"

ฉันไม่ใช่มืออาชีพในเรื่องนี้ นี่เป็นเรื่องบังเอิญโดยบังเอิญฉันไม่รู้ว่าจะใช้ได้กับคุณหรือไม่

แต่มันก็คุ้มค่าที่จะลอง


คุณสามารถอธิบายสิ่งที่คุณทำเพื่อSHELL?
Stephen Rauch

ฉันไม่รู้จริงๆว่ามันทำงานอย่างไรฉันไม่ได้แก้ไขอะไรที่เกี่ยวข้องกับเชลล์เช่นกัน ตรวจสอบลิงค์ภาพหน้าจอ: imgur.com/a/l4SGtBK
Ravi Kiran

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