新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
詳解shell基礎(chǔ)知識
shell也是操作系統(tǒng)中的一個軟件,它包含在Linux內(nèi)核的外面,為用戶和內(nèi)核之間的交互提供了一個接口,目前最流行的shell成為bash shell(GUN Bourne-Again Shell)。?用戶的命令用shell去解釋,再發(fā)送給Linxu內(nèi)核,shell接收系統(tǒng)方回應(yīng)的輸出并顯示其到屏幕中。

1:編寫shell腳本
vi test.sh
#!/bin/bash #指定這個腳本需要什么解釋器來執(zhí)行
echo "Hello World !" # echo命令用于向窗口輸出文本
2:執(zhí)行shell腳本
cd入文件存在的目錄
chmod +x ./test.sh #使腳本具有執(zhí)行的權(quán)限
./test.sh #執(zhí)行腳本
3:Shell變量的理解
例子: your_name="wangzhi.cn"
注意:變量名和等號之間不能有空格
規(guī)則:
(1).首字母必須為字母(a-z,A-Z)
(2).中間不能有空格,可以使用(_)
(3).不能使用標(biāo)點(diǎn)符號
(4).不能使用bash中的關(guān)鍵字(可以使用help命令查看保留關(guān)鍵字)
例子:for file in `ls /etc` 這個語句可以將/etc下目錄的文件名循環(huán)出來
4:變量的使用
定義變量:your_name = "wangzhi"
使用變量:echo ${your_name} # 建議輸出變量加上{},養(yǎng)成好的編程習(xí)慣.
5:Shell字符串(注意注意:下標(biāo)是從0開始計算的)
單引號:
str = 'This is a string' (限制:
單引號中的任何字符都會原樣輸出,單引號中無法輸出變量;
單引號中不能出現(xiàn)單引號)
雙引號:
str = "Hello, I know your are \"${your_name}\"!\n"
(雙引號內(nèi)可以有變量;雙引號內(nèi)可以有轉(zhuǎn)義字符)
字符串拼接:
your_name="qinjx"
greeting="hello, "$your_name" !"
greeting_1="hello, ${your_name} !"
echo $greeting $greeting_1
獲取字符串長度:
string="abcd"
echo ${#string} #輸出 4
提取字符串
string="alibaba is a great company"
echo ${string:1:4} #輸出liba,字符串的下標(biāo)是從0開始的
查找子字符串(下標(biāo)從1開始計算)
string="alibaba is a great company"
echo `expr index "$string" is`
#!/bin/bash
your_name="wangzhi"
echo ${your_name}
str='This is a String'
echo "單引號字符串 :${str}" # 拼接都可以這樣寫,下面的寫法是被誤導(dǎo)的
str2="Hello, I know you are \"${your_name}\"!\n"
echo "雙引號字符串 : \" ${str2}\"\n"
greet="Hello, ${your_name} !"
echo "字符串拼接 : \" ${greet}\"\n"
echo "獲取字符串長度 : \"${#greet}\"\n" # 0~length-1,與java中相同
echo "提取字符串 : \"${greet:1:4}\"\n" # 下標(biāo)從0開始,從1開始計算4個
echo "查找子字符串 : \n"
echo `expr index "${greet} hello"` # 下標(biāo)是從1開始計算的
6:Shell數(shù)組(可以存放各種數(shù)據(jù)類型,下標(biāo)從0開始)
定義:${數(shù)組名[下標(biāo)]} 例如: valuen = ${array_name[n]}
使用@符號可以獲取數(shù)組中的所有元素,例如:echo ${array_name[@]}
獲取數(shù)組長度:
# 取得數(shù)組元素的個數(shù)
length=${#array_name[@]}
# 或者
length=${#array_name[*]}
# 取得數(shù)組單個元素的長度
lengthn=${#array_name[n]}
7:注釋
只有單行注釋—-(使用 # 進(jìn)行注釋)
新聞標(biāo)題:詳解shell基礎(chǔ)知識
URL分享:http://m.fisionsoft.com.cn/article/cdhhijj.html


咨詢
建站咨詢
