สีในการเชื่อมต่อ SSH


8

ฉันมี terminal bash ที่มีสีสัน (เช่น ls และ vim แสดงสีเมื่อกำหนดค่าให้ทำ)

ฉันจะมีสีเหล่านี้เมื่อเชื่อมต่อกับเซิร์ฟเวอร์ระยะไกลผ่าน ssh ได้อย่างไร

คำตอบ:


3

อ่านส่วนย่อยdircolors.shจากหนังสือ "Beyond Linux From Scratch":

สคริปต์นี้ใช้~/.dircolorsและ/etc/dircolorsไฟล์เพื่อควบคุมสีของชื่อไฟล์ในรายการไดเรกทอรี พวกเขาควบคุมการส่งออก colorized สิ่งที่ต้องการสั่ง ls --color คำอธิบายวิธีการเริ่มต้นไฟล์เหล่านี้อยู่ที่ส่วนท้ายของส่วนนี้

cat > /etc/profile.d/dircolors.sh << "EOF"
# Setup for /bin/ls and /bin/grep to support color, the alias is in /etc/bashrc.
if [ -f "/etc/dircolors" ] ; then
        eval $(dircolors -b /etc/dircolors)

        if [ -f "$HOME/.dircolors" ] ; then
                eval $(dircolors -b $HOME/.dircolors)
        fi
fi
alias ls='ls --color=auto'
alias grep='grep --color=auto'
EOF

9
คุณช่วยขยายคำตอบหน่อยได้ไหม? คำถามมีจำนวนการดู 2,800 ครั้ง - เป็นการดีที่จะเพิ่มบริบทอีกเล็กน้อย
slhck

Fedora 20 ยังมาพร้อมกับสคริปต์colorls.sh
Cristian Ciupitu

3

ใช้การรวมกันของ/unix/9883/how-can-i-run-a-script-immediately-after-connect-via-sshและคำตอบของ nik ที่คุณสามารถทำได้:

ssh host.example.com -t '. /etc/profile; . ~/.profile; /bin/bash'

สิ่งนี้จะดำเนินการสคริปต์โปรไฟล์ของคุณในการเข้าสู่ระบบจากนั้นเปิดเปลือกทุบตี สคริปต์โปรไฟล์ของคุณเป็นที่กำหนดสี

หรือเพื่อความสะดวกสูงสุดให้เพิ่มไฟล์ต่อไปนี้ใน~/.ssh/configไฟล์ของคุณ:

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