私はPS1
bashのために良いものを作りました。http://bashrcgenerator.com/、ところで何か間違っているようです。端末エミュレータにランダムな文字が表示されます。これはPS1
構文エラーがある可能性があることを意味します。奇妙なことは、ナノを使用して編集した後に機能することです。スペースを追加、削除、保存し、bashを実行すると正常に動作します。ところで、ログアウトしてから再度ログインすると、またエラーが出て変です。これは私の.bashrcです。
#
# ~/.bashrc
#
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
alias ls='ls --color=auto'
#PS1='[\u@\h \W]\$ '
PS1="\[$(tput sgr0)\]\033[38;5;15m\033[38;5;14m\u\[$(tput sgr0)\]\033[38;5;15m\033[38;5;15m \[$(tput sgr0)\]\033[38;5;15m\033[38;5;10m\w\[$(tput sgr0)\]\033[38;5;15m\033[38;5;15m \
\[$(tput sgr0)\]\033[38;5;15m\033[38;5;14m\\$\[$(tput sgr0)\]\033[38;5;15m\033[38;5;15m \[$(tput sgr0)\]"
答え1
プロンプトを直接手動で生成することをお勧めします。いくつかの変数を設定するだけで、プロンプト設定コードを読むことができます。私のbashrcファイルには次のものがあります。
#Set variables for foreground colors
fgRed=$(tput setaf 1) ; fgGreen=$(tput setaf 2) ; fgBlue=$(tput setaf 4)
fgMagenta=$(tput setaf 5) ; fgYellow=$(tput setaf 3) ; fgCyan=$(tput setaf 6)
fgWhite=$(tput setaf 7) ; fgBlack=$(tput setaf 0)
#Set variables for background colors
bgRed=$(tput setab 1) ; bgGreen=$(tput setab 2) ; bgBlue=$(tput setab 4)
bgMagenta=$(tput setab 5) ; bgYellow=$(tput setab 3) ; bgCyan=$(tput setab 6)
bgWhite=$(tput setab 7) ; bgBlack=$(tput setab 0)
#Set variables for font weight and text decoration
B=$(tput bold) ; U=$(tput smul) ; C=$(tput sgr0)
#NOTE: ${C} clears the current formatting
PS1="${B}${fgCyan}\u${C}@\h(bash): ${fgGreen}\w${C} > "
私のヒントがどんなものか一目で知ることができると思います。これがポイントです。素晴らしいWYSIWYGエディタは必要ありません。
私が使う理由tput
はい、携帯性が良くなければなりません。追加ボーナスとしてを使用するtput
と。echo $PS1
PS1
これはなぜ機能しないのかという答えではありません。しかし、このようなプロンプトを設定すると、確かにその不愉快なエラーを取り除くことができます。