Bash的特殊字元

keepcode發表於2020-04-27

1.註釋 #

#!/bin/bash
echo "# Here does not comment"
echo The #Here does comment.
echo (( 2#10011 ))  #用二進位制表示一個數字

2.分號 ;

#!/bin/bash
echo hello; echo world   #同一行執行多條命令

3.雙分號 ;;

#!/bin/bash
varname=b
case "$varname" in
    [a-z]) echo "abc";;
    [0-9]) echo "123";;
esac

4.單引號'

'string' 阻止string中所有特殊字元的解釋

5.雙引號"

"string" 阻止string中大部分特殊字元的解釋

6.斜線/

檔案路徑分隔符

7.反斜線\

轉義字元:\n換行 \r回車

8.反引號 `

cp test.sh test `mkdir test` #反引號中的命令優先執行

9.冒號 :

#!/bin/bash
while :  #冒號相等於true
do
        echo "endless loop"
done

#!/bin/bash
condition=5
if [ $condition -gt 0 ] 
then :  #冒號作為佔位符
else 
    echo "$condition"
fi

10.問號?

#!/bin/bash
a=19
(( t=a<20?8:9 ))  #三元操作符
echo $t

11.變數替換$

12.小括號()

#!/bin/bash
a=123
( a=321; )  #命令組,執行在子shell中
echo $a  #輸出的值為123,括號內的值為區域性變數
arr=(1 2 3 4 5)  #初始化陣列
echo $arr 

12.大括號{}

#!/bin/bash
echo 'test text' >> t.txt
cp t.{txt,back}  **#副檔名**
{ a=123; }  **#程式碼塊**
echo $a

13.中括號[]

條件測試表示式中[ 條件 ]

陣列元素arr[0]

**14.尖括號< >

重定向test.sh > filename

15.豎線 |

管道

16.破折

選項,字首

重定向stdin,stdout

17.波浪號~

家目錄

相關文章