linux下shell的基礎程式設計和高階程式設計

2021-10-02 19:50:01 字數 2748 閱讀 8078

有起要注意空格等問題,這個一開始學的時候特別容易出錯,然後導致查了半天!!

1-helloworld.sh

#!

/bin/bash

#使用/bin/bash來解析指令碼

echo "helloworld"

2-變數.sh

#!

/bin/bash

num=

10name=

"jack"

age=

22***=

'male'

echo $num

echo "name : $name age : $age *** : $***"

echo "輸出命令列引數"

echo $1

echo $2

echo $3

echo "共有$#個命令列引數"

echo "所有引數:$*"

#export aa=100 #環境級變數 作用域:當前終端

#echo "export aa=100" >> ~/.profile #使用者級變數 作用域:相同使用者

#source ~/.profile

#echo "export aa=100" >> /etc/profile #系統級變數 作用域:整個系統

#source /etc/profile

echo "列印環境變數"

echo $aa

3-數**算.sh

#!

/bin/bash

num=

100let num=num+

100echo $num

num=

100num=$[num+

100]

echo $num

num=

100num=$(

(num+

100)

)echo $num

num=

100num=`expr $num +

100`

echo $num

4-陣列.sh

#!

/bin/bash

array1=(1

2345

)array2=

('a'

'b''c'

'd''e'

)array3=

("1111"

"2222"

"3333"

)echo $

echo $

echo $

echo $ #訪問所有元素

echo $ #列印陣列元素個數

echo $ #列印所有的下標

echo $ #從第二個元素開始列印

echo $

#關聯陣列

echo "**************"

declare -a array4

declare -a array5

array4[name]

="jack"

array4[age]=22

array4[***]

="male"

array5=

([name]

="tom"

[age]=23

[***]

="male"

)echo $

echo $

5-判斷語句.sh

#!

/bin/bash

num=$1if[

-z $num ]

; then #長度為0則成立

echo "請輸入引數"

exit

fiif

[ $num -eq 100

]; then #判斷相等

echo "等於100"

elif [ $num -gt 100

]; then

echo "大於100"

elif [ $num -lt 100

]; then

echo "小於100"

fi

6-case.sh

#!

/bin/bash

read num

case $num in

[a-z]

) echo "小寫字母";;

[a-z]

) echo "大寫字母";;

[0-9

])echo "數字";;

*)echo "未知";;

esac

7-while.sh

#!

/bin/bash

while read i

do echo $i

done < $1

8-for.sh

#!

/bin/bash

for(

(i=0

;i<

5;i++))

do mkdir $i

cd $i

echo "this is $i"

> $i

cd .

.done

for i in 012

34do cd $i

echo "hello $i"

> $i

cd .

.done

Linux實驗 Linux下的shell程式設計

某單位的系統管理員計畫用shell程式設計編寫乙個程式實現usb裝置的自動掛載。程式的功能如下 運算程式時,提示使用者輸入 y 或 n 確定是不是掛載usb裝置。如果使用者輸入 y 則掛載這個usb裝置。提示使用者輸入 y 或 n 確定是不是複製文字。如果使用者輸入 y 則顯示檔案列表,然後提示使用...

linux下的shell 和python編寫

第一句即指定指令碼直譯器 bin bash usr bin env python3或 which python3的哪個 usr bin python3 執行兩種方法 第一種編寫完 直接bash s.sh python3 s.py 第二種賦加x chmod a x s.sh chmod 777 s.p...

vmware下初編linux問題

今天在vmware下編譯linux2.4.18核心,出現了乙個問題 mkinitrd initrd 2.4.26.img 2.4.26的時候出現錯誤 no module buslogic found for kernel 2.4.26 原來是vmware預設用的是scsi做硬碟驅動,核心裡面沒有選,...