Bash 脚本添加样式到 PS3
Bash Script add style to PS3
如何将样式应用于 bash 中的 PS3 变量?我尝试了各种应用样式的方法,但我无法应用它。
例如,如何使用 RED 变量在 PS3 上添加红色文本?
代码:
#! /usr/bin/bash
BGMAGENTA="\e[45m"
YELLOW="\e[33m"
RED="\e[1;31m"
GREEN="\e[1;32m"
ENDCOLOR="\e[0m"
UNDERLINE="\e[4m"
echo -e "\n${BGMAGENTA}BabyMalware esta en desarollo${ENDCOLOR}\n"
PS3=$'\n'"babyMalware > "
options=("Malware LAN" "Malware WAN" "Salir")
select opt in "${options[@]}"
do
case $opt in
"Malware LAN")
echo -ne "\nIP Privada : "
hostname -I
echo -e "\n"
;;
"Malware WAN")
echo -ne "IP Publica WAN : "
publicip | tail -n 1
;;
"Salir")
echo "Saliendo..."
break
;;
*) echo "Opción elegida no valida : $REPLY";;
esac
done
不依赖于内部反斜杠扩展,而是直接存储转义字符:
BGMAGENTA=$'\e[45m'
YELLOW=$'\e[33m'
RED=$'\e[1;31m'
GREEN=$'\e[1;32m'
ENDCOLOR=$'\e[0m'
UNDERLINE=$'\e[4m'
您还需要指定特殊的阅读行字符。这些等价于 PS1
.
中的 \[
和 \]
RL_BEGIN=$'[=11=]1'
RL_END=$'[=11=]2'
PS3=$'\n'"${RL_BEGIN}${RED}${RL_END}babyMalware > ${RL_BEGIN}${ENDCOLOR}${RL_END}"
如何将样式应用于 bash 中的 PS3 变量?我尝试了各种应用样式的方法,但我无法应用它。
例如,如何使用 RED 变量在 PS3 上添加红色文本?
代码:
#! /usr/bin/bash
BGMAGENTA="\e[45m"
YELLOW="\e[33m"
RED="\e[1;31m"
GREEN="\e[1;32m"
ENDCOLOR="\e[0m"
UNDERLINE="\e[4m"
echo -e "\n${BGMAGENTA}BabyMalware esta en desarollo${ENDCOLOR}\n"
PS3=$'\n'"babyMalware > "
options=("Malware LAN" "Malware WAN" "Salir")
select opt in "${options[@]}"
do
case $opt in
"Malware LAN")
echo -ne "\nIP Privada : "
hostname -I
echo -e "\n"
;;
"Malware WAN")
echo -ne "IP Publica WAN : "
publicip | tail -n 1
;;
"Salir")
echo "Saliendo..."
break
;;
*) echo "Opción elegida no valida : $REPLY";;
esac
done
不依赖于内部反斜杠扩展,而是直接存储转义字符:
BGMAGENTA=$'\e[45m'
YELLOW=$'\e[33m'
RED=$'\e[1;31m'
GREEN=$'\e[1;32m'
ENDCOLOR=$'\e[0m'
UNDERLINE=$'\e[4m'
您还需要指定特殊的阅读行字符。这些等价于 PS1
.
\[
和 \]
RL_BEGIN=$'[=11=]1'
RL_END=$'[=11=]2'
PS3=$'\n'"${RL_BEGIN}${RED}${RL_END}babyMalware > ${RL_BEGIN}${ENDCOLOR}${RL_END}"