- 回顯關(guān)閉顯示
stty -echo :關(guān)閉回顯
stty echo :開啟回顯
- 字體顏色
#!/bin/bash
#
#下面是字體輸出顏色及終端格式控制
#字體色30-37
echo -e "\033[30m黑色字\033[0m"
echo -e "\033[31m紅色字\033[0m"
echo -e "\033[32m綠色字\033[0m"
echo -e "\033[33m黃色字\033[0m"
echo -e "\033[34m藍色字\033[0m"
echo -e "\033[35m紫色字\033[0m"
echo -e "\033[36m天藍字\033[0m"
echo -e "\033[37m白色字\033[0m"
#字背景顏色范圍:40-47
echo -e "\033[40;37m黑底白字\033[0m"
echo -e "\033[41;30m紅底黑字\033[0m"
echo -e "\033[42;34m綠底藍字\033[0m"
echo -e "\033[43;34m黃底藍字\033[0m"
echo -e "\033[44;30m藍底黑字\033[0m"
echo -e "\033[45;30m紫底黑字\033[0m"
echo -e "\033[46;30m天藍底黑字\033[0m"
echo -e "\033[47;34m白底藍字\033[0m"
#.....
#控制選項說明
#\033[0m關(guān)閉所有屬性
#\033[1m設置高亮度
#\033[4m下劃線
echo -e "\033[4;31m下劃線紅字\033[0m"
#閃爍
echo -e "\033[5;34m紅字在閃爍\033[0m"
#反影
echo -e "\033[8m消隱\033[0m "
#
#\033[30m-\033[37m設置前景色
#\033[40m-\033[47m設置背景色
#\033[nA光標上移n行
#\033[nB光標下移n行
echo -e "\033[4A光標上移4行\(zhòng)033[0m"
#\033[nC光標右移n行
#\033[nD光標左移n行
#\033[y;xH設置光標位置
#\033[2J清屏
#\033[K清除從光標到行尾的內(nèi)容
echo -e "\033[K清除光標到行尾的內(nèi)容\033[0m"
#\033[s保存光標位置
#\033[u恢復光標位置
#\033[?25|隱藏光標
#\033[?25h顯示光標
echo -e "\033[?25l隱藏光標\033[0m"
echo -e "\033[?25h顯示光標\033[0m"
#下面的這個例子是字體不停的閃爍救崔。
#!/bin/bash
#
a=30
b=41
while true
do
echo -e "\033[${a}m光輝女郎\033[0m"
echo -e "\033[${a}m的嗎西亞\033[0m"
echo -e "\033[${a}m洛克薩斯\033[0m"
a=$(($(($a%7))+30))
b=$(($(($b%7))+40))
#每次讓字體顏色在30-37轉(zhuǎn)換
#每次讓背景顏色在40-47轉(zhuǎn)換
echo -e "\033[4A\033[0m"
done
- 暫停
sleep 1
- map的使用
declare -A map=(
[name]="張三"
[age]=13
)
echo keys = ${!map[@]} # 打印key數(shù)組
echo keys = ${map[@]} # 打印value數(shù)組
- 續(xù)行 換行
apt-get install -y xxxx \
xxxxx \
xxxxx
echo -e "\r\n"
如果輸出的內(nèi)容帶換行
- 文件寫入
echo abc > a.txt # 寫入文件
echo def >> a.txt # 追加到文件
: > a.txt # 清空文件 : 這個是占位符
- 出錯處理
if [ "$?" -ne 0 ]; then exit 8; fi # 如果上一個命令出錯,則退出
- 獲取命令執(zhí)行的結(jié)果
releaseZip=`ls *.zip`
- 判斷變量是否為空
if [ ! $para1 ]; then
#if [ ! $para1 ]; then 這個也可以
#if [ "$dmin" = "" ] 判斷變量是否為空
echo "IS NULL"
fi
- 從終端讀取輸入
read 變量名 # 不需要定義
echo $變量名 # 輸出內(nèi)容
# 字符串拼接
your_name="qinjx"
greeting="hello, "$your_name" !"
greeting_1="hello, ${your_name} !"
echo $greeting $greeting_1
- 字符串
str='this is a string' # 單引號里的任何字符都會原樣輸出度宦,單引號字符串中的變量是無效的
str="Hello, I know your are \"$your_name\"! \n" # 雙引號里可以有變量
string="abcd"
echo ${#string} # 字符串長度
- 循環(huán)
# 無限循環(huán)
while :
do
command
done
while true
do
command
done
for (( ; ; ))