1. 程式人生 > 實用技巧 >Linux Shell 學習記錄

Linux Shell 學習記錄

開頭先指定路徑包含shell命令直譯器 通常有幾種寫法:

#!/bin/bash    #!/usr/bin/bash
#!/bin/sh   #!/usr/bin/sh

匯入其他shell檔案,兩種方式,這裡以當前目錄include.sh檔案為例:

. include.sh
# source ./include.sh

定義變數只包含數字、字母和下劃線且開頭不能數字開頭:

# 變數可以下劃線開頭
_t=0
a=10
b=20

取變數---變數名前加$

str="Hello World!"
echo $str

expr表示式
# expr表示式
c=`expr $a + $b`
echo $c

使用者輸入
# read輸入
echo 'before input' $_t
read _t
echo 'after input' $_t

條件判斷
# if判斷
if test 10 -ge 20
#if [ 10 -ge 20 ]
then
    echo '10 >= 20'
else
    echo '10 < 20'
fi

if [ $a == $b ]
then
     echo 'a == b'
else
     echo 'a != b'
fi


# case判斷
case $a in
1)
    echo 1
    ;;
4)
    echo 4
    ;;
8)
    echo 8
    ;;
10)
    echo 10
    ;;
esac

迴圈語句
# 各種迴圈
arr=(0 1 2 3 4)
# if
for i in ${arr[@]}
do
    echo -e $i
done

# while
# while : 死迴圈
echo "please input 'Ctrl + D' to exit"
while read FILM
do
    echo "Yeah! great film the $FILM"
done

# until
until [ $c == 32 ]
do
    echo $c
    c=$[ $c + 1 ]
done

Shell函式定義
# function test
function fun(){
    echo 
'this is a function' return 0 } # 呼叫函式 unset .f 刪除 fun 1 2

一些特殊操作
# 特殊運算操作
echo $[$a + $b]

# 字串變數 命令
cmd="echo"
$cmd "Hello World!"