linux shell腳本 簡單學習

linux shell腳本 簡單學習

一些需要知道的概念

  • SHELL種類

kernel與shell是兩個不一樣的東西。

SH:

​ Bourne shell(sh),solaris,hpux默認shell

​ Bourne again shell (bash),Linux 默認shell

  • Linux中查看shell:
echo $SHELL 
/bin/bash
  • shell環境

1.臨時環境變量

2.系統預定義的環境變量

3.將一些環境變量永久生效

shell腳本

跟平常的腳本一樣,shell編寫腳本也是一門學問。

  • 簡單的一個例子

類似於py腳本,

開頭要告訴內核,用什麼去識別。

註釋的話用#去標識。

先寫個簡單的demo:

more demo.sh
#!/bin/bash
#linux shell script!!!!!amazing!
echo "hello linux"

簡單的打印出字符串。

----emmm,一般在shell腳本加上.sh後綴,只是爲了好辨認出了而已。。。。

  • 腳本的權限問題

一般這樣編寫的腳本都是沒有執行權限的。

-*- 解決方案 - * -

chomod +x filename.sh

就行了,ls查看,變綠了就是能執行的。

  • 執行腳本

簡單:

sh filename
./filepath/filename

PS:tips:寫腳本時,可以在最後一行(另起一行)加上data

這樣的話,就能辨識這個腳本是什麼時候寫的。

  • shell中的變量

這個也不難,也不用學太多其他啥的。

記住要在變量之前弄個$就好了。

一些命令:

set #list all the aspects
unset xxx#delete some aspects

  • 交互的命令

read 相當於python的input命令

read -p "input a number:" x
#it means the value of the num point to x hh

簡單的邏輯判斷

  • if - then

判斷條件:(要使用雙小括號“(())”來表示)

demo:(記住大概模式模仿就行了)

#!/bin/bash
#demo logic
data
read -p "input a number!sir,:" num
if ((num<10));then
	echo "small num"
elif ((a>10))&&((a<20));then
	echo "bigger"
else
	echo "biggest"
fi

for demo

#!/bin/bash
#data for 
data
for  i in a,b,c,d ;do
	echo $i
done
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章