ข้อความแจ้งเตือนค่าเริ่มต้นของหน้าต่างเทอร์มินัลของฉันใช้พื้นที่มากเกินไป (ฉันเดาว่าชื่อคอมพิวเตอร์ของฉันยาวเกินไป)
ฉันสามารถปรับแต่งสิ่งนี้ได้ไหม
ข้อความแจ้งเตือนค่าเริ่มต้นของหน้าต่างเทอร์มินัลของฉันใช้พื้นที่มากเกินไป (ฉันเดาว่าชื่อคอมพิวเตอร์ของฉันยาวเกินไป)
ฉันสามารถปรับแต่งสิ่งนี้ได้ไหม
คำตอบ:
ใช่มันสามารถปรับแต่งได้ด้วยPS1
ตัวแปรสภาพแวดล้อม
คุณสามารถตั้งค่าได้โดยใส่สิ่งนี้ในไฟล์.bash_profile
หรือ.profile
:
PS1="your prompt"
หากคุณต้องการพรอมต์ทุบตีง่าย ๆ ที่ไม่ใช้พื้นที่มาก (ซึ่งดูเหมือนจะเป็นสิ่งที่คุณกำลังมองหา) คุณสามารถตั้งค่าให้แสดงไดเรกทอรีปัจจุบันเช่นนี้:
PS1="\w "
\w
เป็นหนึ่งในหลายทุบตี PS1 ลำดับหนี อันนี้ขยายไปยังไดเรกทอรีปัจจุบัน
นี่คือไฟล์ / etc / prompt ของฉันซึ่งฉันมาจาก / etc / profile มันใช้สีตามชื่อชื่อเครื่องชื่อ dir สีขึ้นอยู่กับผู้ใช้และส่วนใหญ่เป็นสำเนาไร้ยางอายของบางส่วนของ manpage ของทุบตี:
#
# PROMPTING
# When executing interactively, bash displays the primary prompt PS1 when it is ready to read a command, and the sec-
# ondary prompt PS2 when it needs more input to complete a command. Bash allows these prompt strings to be customized
# by inserting a number of backslash-escaped special characters that are decoded as follows:
# \a an ASCII bell character (07)
# \d the date in "Weekday Month Date" format (e.g., "Tue May 26")
# \D{format}
# the format is passed to strftime(3) and the result is inserted into the prompt string; an empty format
# results in a locale-specific time representation. The braces are required
# \e an ASCII escape character (033)
# \h the hostname up to the first `.'
# \H the hostname
# \j the number of jobs currently managed by the shell
# \l the basename of the shell's terminal device name
# \n newline
# \r carriage return
# \s the name of the shell, the basename of $0 (the portion following the final slash)
# \t the current time in 24-hour HH:MM:SS format
# \T the current time in 12-hour HH:MM:SS format
# \@ the current time in 12-hour am/pm format
# \A the current time in 24-hour HH:MM format
# \u the username of the current user
# \v the version of bash (e.g., 2.00)
# \V the release of bash, version + patchelvel (e.g., 2.00.0)
# \w the current working directory
# \W the basename of the current working directory
# \! the history number of this command
# \# the command number of this command
# \$ if the effective UID is 0, a #, otherwise a $
# \nnn the character corresponding to the octal number nnn
# \\ a backslash
# \[ begin a sequence of non-printing characters, which could be used to embed a terminal control sequence
# into the prompt
# \] end a sequence of non-printing characters
#
# The command number and the history number are usually different: the history number of a command is its position in
# the history list, which may include commands restored from the history file (see HISTORY below), while the command
# number is the position in the sequence of commands executed during the current shell session. After the string is
#
# colors:
# \[...\] needed, so the shell knows, that this isn't printable output, and newlines are placed at the right position.
#
# ANSI COLORS
CRE="\[
[K\]"
NORMAL="\[[0;39m\]"
# RED: Failure or error message
RED="\[[1;31m\]"
# GREEN: Success message
GREEN="\[[1;32m\]"
# YELLOW: Descriptions
YELLOW="\[[1;33m\]"
# BLUE: System messages
BLUE="\[[1;34m\]"
# MAGENTA: Found devices or drivers
MAGENTA="\[[1;35m\]"
# CYAN: Questions
CYAN="\[[1;36m\]"
# BOLD WHITE: Hint
WHITE="\[[1;37m\]"
#
# default:
# postgres, oracle
#
# PS1=$BLUE"asux]->"$NORMAL\\w"$BLUE ø $NORMAL"
PS1=$BLUE"asux]:"$NORMAL\\w"$BLUE > $NORMAL"
#
# root, stefan:
#
case "$UID" in
'0')
PS1=$RED"asux:"$NORMAL\\w"$RED # $NORMAL"
;;
'1000')
PS1=$GREEN"asux:"$BLUE\\w$YELLOW" > "$NORMAL
;;
# default)
# ;;
esac
asux
เป็นชื่อเครื่องของฉันแทนที่ด้วยของคุณ เป็นการใช้งานทั่วไปเพื่อใช้สีต่าง ๆ (สีแดงสำหรับรูท) และแจ้งให้ (> สำหรับผู้ใช้, # สำหรับรูท) สำหรับผู้ใช้ปกติและผู้ใช้ระดับสูง หากคุณใช้ ssh บ่อยครั้งชื่อเครื่องจะเป็นประโยชน์และมีสีต่างกันถ้าคุณใช้โฮสต์ที่แตกต่างกัน 2-3 โฮสต์
ฉันมีสีที่แตกต่างกันสำหรับผู้ใช้ 'postgresql' หรือ 'oracle' แต่ฉันไม่ต้องการมันบ่อยนัก