複数の行にまたがって分割されるmultilne変数を作成して、インデントされていない各行にインデントしたいとします。私は、いくつかの方法を試みた:bash変数の改行とタブをエスケープするには?
function regprompt {
case "$TERM" in
xterm*)
PS1=$(cat <<-EOF
${blue} \u ${txtrst}on ${cyan}\h${white}\$gitps1 ${blue}\${fill} \
${undgrn}\d \D{%r} ${blue}\
\n[ ${yellow}\$newPWD ${blue}] ${txtrst}$ ${blue}
EOF
)
;;
linux*)
PS1="${green} \u ${txtrst}on ${cyan}\h${white}\$gitps1 ${green}\${fill} \
${undgrn}\d \D{%r} ${green}\
\n[ ${yellow}\$newPWD ${green}] ${txtrst}$ ${green}"
;;
screen*)
PS1="${green} \u ${txtrst}on ${cyan}\h${white}\$gitps1 ${green}\${fill} \
${undgrn}\d \D{%r} ${green}\
\n[ ${yellow}\$newPWD ${green}] ${txtrst}$ ${green}"
;;
esac
}
最初のオプションは、私が唯一の空間(エスケープ前のもの)を表示したい日付の部分(\ D \ D {%のR})インデントを示します。その上のすべてが正しく表示されます。 2番目のオプションも同じです。画面オプションが正しく表示されます。整理しておく方法があるかどうかを知りたいだけですか?
すごくうまくいった!ありがとう、これを整理しようとする苦痛だった、ここで最初に尋ねられるべきである。 sedとtrなどの学習を始める時間を推測してください:|。 – bluTaz