ฉันจะกำหนดค่า Mac Terminal ให้แสดงผลสีได้อย่างไร ฉันใช้ MacOS 10.5
ฉันจะกำหนดค่า Mac Terminal ให้แสดงผลสีได้อย่างไร ฉันใช้ MacOS 10.5
คำตอบ:
แก้ไข:
~/.bash_profile
หรือ
~/.profile
และเพิ่มบรรทัดต่อไปนี้เพื่อเปิดใช้งานเอาต์พุตสีผ่านls
:
export CLICOLOR=1
หากต้องการปรับแต่งสีที่แสดงโดยls
คุณสามารถเลือกเพิ่มตัวแปรนี้LSCOLORS
ได้
ค่าเริ่มต้น
export LSCOLORS=ExFxCxDxBxegedabagacad
คุณสามารถใช้สิ่งนี้หากคุณใช้พื้นหลังสีดำ
export LSCOLORS=gxBxhxDxfxhxhxhxhxcxcx
หากคุณต้องการเลียนแบบสีของเทอร์มินัล Linux ทั่วไป:
export LSCOLORS=ExGxBxDxCxEgEdxbxgxcxd
เมื่อคุณเพิ่มข้างต้นลงในอย่างใดอย่างหนึ่ง~/.bash_profile
หรือ~/.profile
คุณสามารถออกจากระบบ / เข้าสู่ระบบหรือแหล่งที่มาของไฟล์ในเปลือกของคุณเช่น:
$ . ~/.bash_profile
หมายเหตุ:หากคุณต้องการความช่วยเหลือในการเลือกสีที่จะใช้คุณสามารถใช้เครื่องมือออนไลน์ที่เรียกว่าLSCOLORS ปั่นไฟ
echo $CLICOLOR
ควรให้ 1 หรือไม่
คุณสามารถเพิ่ม
alias ls='ls -G'
เพื่อของคุณที่~/.bash_profile
จะได้รับls
ผลสี
-p
และทำให้คุณเพิ่ม-F
ซึ่งนอกเหนือจากการ*
ปฏิบัติการ|
หลังจากท่อ@
หลังจาก symlinks และอื่น ๆ
export CLICOLOR=1
เพื่อทำสิ่งเดียวกันให้สำเร็จ
ฉันพบว่าสิ่งที่ฉันต้องการจริงๆคือการเพิ่มลงในของฉัน ~/.bash_profile
export CLICOLOR=1
~/.bashrc
หรือ
. ~/.bash_profile
หรือ 3. ออกจากระบบ / เข้าสู่ระบบ
หากคุณต้องการโครงร่างสีของเทอร์มินัล Mac OS X ที่อ่านได้คุณอาจต้องการตรวจสอบสิ่งนี้:
ฉันใช้สิ่งนี้มานานกว่าหนึ่งปีแล้วและฉันอาจไม่สามารถใช้งานได้หากไม่มี!
นี่คือลิงค์อัพเดท:
นอกจากนี้คุณสามารถปรับแต่งสีพรอมต์ (และรูปแบบ) โดยเพิ่ม:
PS1='\[\e[0;33m\]\h:\W \u\$\[\e[m\] '
ไปยัง~/.bash_profile
หรือ~/.profile
ไฟล์ 0;33
สีเหลืองปกติอยู่ที่ไหนซึ่งดูดีในหน้าต่างเทอร์มินัลสีดำ / กึ่งโปร่งใสของฉัน
นี่คือรายการสีและคำอธิบายทั้งหมด: https://wiki.archlinux.org/index.php/Color_Bash_Prompt
อีกทางเลือกหนึ่งคือใช้ GNU ls
ซึ่งเป็นส่วนหนึ่งของโปรแกรม 'coreutils'
คุณสามารถรับมันผ่านRudixหรือ Homebrew ( brew info coreutils
) หรือ Macports หรือ Fink อาจเป็นวิธีที่ดีกว่าหากใช้โซลูชัน "Mac OS X เท่านั้น" หากคุณใช้ไฟล์ shell shell เดียวกันในระบบที่แตกต่างกันหรือคุ้นเคยกับ GNU ls อยู่แล้ว
โดยส่วนตัวฉันใช้Oh My Zshเพื่อเพิ่มสีและลูกเล่นอื่น ๆ ให้กับ Terminal ของฉัน ฉันคิดว่านั่นเป็นวิธีที่ง่ายที่สุด
oh-my-zsh เป็นโอเพ่นซอร์สเฟรมเวิร์กที่ขับเคลื่อนด้วยชุมชนสำหรับการจัดการการกำหนดค่า Zsh ของคุณ
มันมาพร้อมกับฟังก์ชั่นที่เป็นประโยชน์มากมายผู้ช่วยปลั๊กอินธีมและบางสิ่งที่ทำให้คุณตะโกน ...
เพียงเพิ่มบรรทัดต่อไปนี้ลงใน~/.bash_profile
ไฟล์:
export PS1=" \[\033[34m\]\u@\h \[\033[33m\]\w\[\033[31m\]\[\033[00m\] $ "
นี่คือสีที่ฉันต้องการ คุณสามารถปรับแต่งสีส่วนหนึ่งของพรอมต์แต่ละคนโดยการเปลี่ยนm
รหัส (เช่น34m
) ซึ่งเป็นรหัสสี ANSI
รายการรหัสสี ANSI:
การรวมคำตอบทั้งหมดที่นี่คือสิ่งที่ฉันใช้:
COLOR_RED="\033[0;31m"
COLOR_YELLOW="\033[0;33m"
COLOR_GREEN="\033[0;32m"
COLOR_OCHRE="\033[38;5;95m"
COLOR_BLUE="\033[0;34m"
COLOR_WHITE="\033[0;37m"
COLOR_RESET="\033[0m"
#git_color
function git_color {
local git_status="$(git status 2> /dev/null)"
if [[ ! $git_status =~ "working directory clean" ]]; then
echo -e $COLOR_RED
elif [[ $git_status =~ "Your branch is ahead of" ]]; then
echo -e $COLOR_YELLOW
elif [[ $git_status =~ "nothing to commit" ]]; then
echo -e $COLOR_GREEN
else
echo -e $COLOR_OCHRE
fi
}
#git_branch
function git_branch {
local git_status="$(git status 2> /dev/null)"
local on_branch="On branch ([^${IFS}]*)"
local on_commit="HEAD detached at ([^${IFS}]*)"
if [[ $git_status =~ $on_branch ]]; then
local branch=${BASH_REMATCH[1]}
echo "($branch)"
elif [[ $git_status =~ $on_commit ]]; then
local commit=${BASH_REMATCH[1]}
echo "($commit)"
fi
}
PS1='\[\033[01;32m\]\u\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]'
PS1+="\[\$(git_color)\]" # colors git status
PS1+="\$(git_branch)" # prints current branch
PS1+="\[$COLOR_BLUE\]\[$COLOR_RESET\]\$ "
export PS1
export LC_ALL=en_US.UTF-8
export CLICOLOR=1
export LSCOLORS=gxBxhxDxfxhxhxhxhxcxcx
alias ls="ls -Gp"
ลืมรหัสลับที่มีอายุหลายสิบปีเพื่อใช้สาเก gosh ใช้เทอร์มินัล -> การกำหนดค่าตามความชอบ ... บานหน้าต่างการตั้งค่าเพื่อตั้งค่าสกินเริ่มต้นและแก้ไขสี ANSI ตามที่คุณต้องการ คุณสามารถกำหนดแบบอักษรได้เช่นกัน ฉันชอบ Menlo 12pt นี่คือสิ่งที่ Joe ทั่วไปสามารถทำได้และหลีกเลี่ยงบรรทัดคำสั่งที่บ้าคลั่งวิธี Unix-esque ในการทำสิ่งต่าง ๆ ตามที่ผู้โพสต์คนอื่น ๆ แนะนำไว้
ls
สามารถมีเอาต์พุตสียังสามารถรันคำสั่ง Unix สองสามคำเพื่อกำหนดค่าอย่างถูกต้อง