การแจ้ง cygwin เริ่มต้นของ"user@computer path
\ n $"
นั้นยาวเกินไปสำหรับฉัน ฉันต้องการรักษาเส้นทาง
ฉันอยากให้มันกลายเป็น:
เส้นทาง $
มีไฟล์ปรับแต่งที่ฉันสามารถแก้ไขได้หรือไม่?
การแจ้ง cygwin เริ่มต้นของ"user@computer path
\ n $"
นั้นยาวเกินไปสำหรับฉัน ฉันต้องการรักษาเส้นทาง
ฉันอยากให้มันกลายเป็น:
เส้นทาง $
มีไฟล์ปรับแต่งที่ฉันสามารถแก้ไขได้หรือไม่?
คำตอบ:
PS1
ตัวแปรสภาพแวดล้อมการควบคุมพรอมต์:
PS1='\w $ '
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับหัวข้อนี้และการกำหนดค่าอื่น ๆ ที่พร้อมท์ให้พิมพ์man bash
(สมมติว่าbash
เป็นเชลล์ของคุณ) และดูส่วน "PROMPTING"
หากต้องการทำการเปลี่ยนแปลงนี้อย่างถาวรให้แก้ไข~/.bashrc
ไฟล์ของคุณเพื่อเพิ่มบรรทัดด้านบน
เปลือกเข้าสู่ระบบเป็นหนึ่งที่มีอักขระตัวแรกของศูนย์อาร์กิวเมนต์เป็น - หรือหนึ่งเริ่มต้นด้วยตัวเลือก --login เมื่อ bash ถูกเรียกใช้เป็นเชลล์ล็อกอินแบบโต้ตอบหรือเป็นเชลล์ที่ไม่มีการโต้ตอบกับตัวเลือก --login มันจะอ่านและเรียกใช้คำสั่งจากไฟล์ / etc / profile ก่อนหากไฟล์นั้นมีอยู่ หลังจากอ่านไฟล์นั้นจะค้นหา ~ / .bash_profile, ~ / .bash_login และ ~ / .profile ตามลำดับและอ่านและเรียกใช้คำสั่งจากไฟล์แรกที่มีอยู่และอ่านได้ อาจใช้ตัวเลือก --noprofile เมื่อเชลล์เริ่มต้นเพื่อยับยั้งพฤติกรรมนี้เมื่อเชลล์โต้ตอบที่ไม่ใช่ล็อกอินเชลล์เริ่มทำงาน bash จะอ่านและดำเนินการคำสั่งจาก ~ / .bashrc หากมีไฟล์นั้นอยู่
ดังนั้นมันขึ้นอยู่กับ ... ฉันไม่ได้ใช้ --login ดังนั้นฉันต้องเพิ่มใน ~ / .bashrc
ไม่แน่ใจว่าทำไมการมีบริบทน้อยกว่าดีกว่ามีมากกว่า ... ความจริงที่ว่ามีบรรทัดใหม่ในพรอมต์หมายความว่าความยาวของพรอมต์ไม่ควรเป็นปัญหา แต่ลองทำสิ่งนี้:
PS1='\[\e[1;33m\]\w\n\[\e[1;36m\]\$\[\e[0m\] '
หรือ
export PS1='\[\e[1;33m\]\w\n\[\e[1;36m\]\$\[\e[0m\] '
สิ่งนี้จะทำให้คุณได้รับพร้อมท์สี:
/full/path/to/current/folder
$your command text here
ด้วยวิธีนี้คุณจะเห็นบริบทโฟลเดอร์ทั้งหมดของคุณเสมอ แต่ยังคงได้รับบรรทัดเต็มเพื่อป้อนข้อความ (ฉันออกจากพื้นที่จารีตประเพณีตาม '$' เพราะมีสีเพื่อความชัดเจน)
Colours are:
1. '/full/path/...' = yellow;
2. '$' (on next line) = cyan;
3. 'your command text...' = light grey.
สำหรับผู้ที่ต้องการบริบท 'user @ hostname' ด้วย:
PS1='\[\e[1;32m\]\u\[\e[1;35m\]@\[\e[1;32m\]\h \[\e[1;33m\]\w\n\[\e[1;36m\]\$\[\e[0m\] '
หรือ
export PS1='\[\e[1;32m\]\u\[\e[1;35m\]@\[\e[1;32m\]\h \[\e[1;33m\]\w\n\[\e[1;36m\]\$\[\e[0m\] '
สิ่งนี้จะทำให้คุณได้รับพร้อมท์สี:
user@hostname /full/path/to/current/folder
$your command text here
นี่คือความชอบของฉัน
Colours are:
1. 'user' = (light) green;
2. '@' = pink;
3. 'hostname' = (light) green;
4. '/full/path/...' = yellow;
5. '$' (on next line) = cyan;
6. 'your command text...' = light grey.
(ไม่ไม่มีการสะกดผิดในโพสต์นี้ - ภาษาอังกฤษของราชินี))
.bashrc ไม่ทำงานสำหรับฉัน ฉันเพิ่มสิ่งนี้ลงในตอนท้ายของ / etc / profile และมันใช้ได้
export PS1="\[\e[33m\]\w\[\e[0m\] \$ "
ฉันใช้ Cygwin รุ่น 2.11.2 (รุ่นล่าสุด ณ ปี 2018-12-18)
ใส่สิ่งนี้ใน ~ / .bashrc ของคุณ ให้พร้อมต์สีและเก็บสถานะไว้ในบรรทัดเดียว
export PS1="\[\e]0;\w\a\]\n\[\e[32m\]\u@\h \[\e[33m\]\w\[\e[0m\]\$ "