最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
如何使用sh腳本命令

這篇文章主要講解了“如何使用sh腳本命令”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“如何使用sh腳本命令”吧!

創(chuàng)新互聯(lián)是創(chuàng)新、創(chuàng)意、研發(fā)型一體的綜合型網(wǎng)站建設(shè)公司,自成立以來(lái)公司不斷探索創(chuàng)新,始終堅(jiān)持為客戶提供滿意周到的服務(wù),在本地打下了良好的口碑,在過(guò)去的十載時(shí)間我們累計(jì)服務(wù)了上千家以及全國(guó)政企客戶,如崗?fù)?/a>等企業(yè)單位,完善的項(xiàng)目管理流程,嚴(yán)格把控項(xiàng)目進(jìn)度與質(zhì)量監(jiān)控加上過(guò)硬的技術(shù)實(shí)力獲得客戶的一致贊賞。

  1. #!/bin/bash 文件第一行,提示電腦后面的代碼需要用 /bin/bash 來(lái)解讀

  2. echo 輸出內(nèi)容,

  3. param=$(cat ./test.txt) 變量賦值,參數(shù)名\等號(hào)\值,三個(gè)之間不能有空格,如果需要得到某夠命令獲取的信息作為值,都可以用這種方式,變量=$(命令);

  4. 變量賦值單引號(hào)與雙引號(hào)的區(qū)別,單引號(hào)不會(huì)轉(zhuǎn)義內(nèi)容,雙引號(hào)會(huì)轉(zhuǎn)義內(nèi)容;

  5. 變量的使用 $param或者 ${param}即可使用;

  6. 獲取用戶輸入值

	echo "請(qǐng)輸入你想要輸入的值"
	read inputValue
	echo $inputValue 		#這里打印出來(lái)的就是用戶輸入的值
	param=$inputValue	#這里將用戶輸入的值賦給了param
	echo $param 				#這里打印出來(lái)的也是用戶輸入的值

如何使用sh腳本命令

  1. sh 下標(biāo)傳入?yún)?shù) sh ./test.sh a b

#!/bin/bash
echo $0 # test 執(zhí)行的文件名
echo $1 #a 第一個(gè)參數(shù)
echo $2 #b 第二個(gè)參數(shù) 可以繼續(xù)寫(xiě)
echo $# #2 	傳遞到腳本的參數(shù)個(gè)數(shù)
echo $* #a b 以一個(gè)單字符串顯示所有向腳本傳遞的參數(shù)
echo $$ # 當(dāng)前的進(jìn)程號(hào)
echo $! #d 后臺(tái)運(yùn)行的最后一個(gè)進(jìn)程號(hào)
..

如何使用sh腳本命令

  1. getopts sh腳本傳參數(shù)方法,如:test.sh -a 1 創(chuàng)建腳本 test.sh

#!/bin/bash
while getopts "a:w:p:n" arg; #這里設(shè)定了參數(shù)必須是-a;-w;-p;-n這幾個(gè)參數(shù)名,后面的冒號(hào)表示必須傳入?yún)?shù)
do
	case $arg in
		a ) #所有版本號(hào)統(tǒng)一
			parms1="$OPTARG"
		;; 
		w ) #前端版本號(hào)
			parms2="$OPTARG"
		;;
		p ) #php版本號(hào)
			parms3="$OPTARG"
		;;
		n ) #最新版本號(hào)
			parms4=1
		;;
		? )
		echo "未知參數(shù): -a; -w ; -p ; -n "
		exit
	esac
done

例如執(zhí)行 sh ./test.sh -a 1 可以選擇參數(shù)名-a 就必須傳入?yún)?shù) 1,-n則可以不用參數(shù); 如何使用sh腳本命令

  1. 字符串的操作

param='abcd_';
param1="$param"'efgh' #拼接字符串,直接跟著寫(xiě)即可 
echo $param1 		 #abcd_efgh
echo ${#param1} 	 #計(jì)算字符串長(zhǎng)度 輸出 9
echo ${param1:1:4} 	 #截取字符串 從1號(hào)下標(biāo)開(kāi)始到4號(hào)結(jié)束 輸出 bcd_ 都知道下標(biāo)從0開(kāi)始的吧
echo ${param1#abcd_} #從左相右匹配截取剩下的字符串,注意必須從頭開(kāi)始算,也就是說(shuō)不能寫(xiě)個(gè)d_開(kāi)始匹配, 輸出efgh
echo ${param1#*_} 	 #從左相右匹配截取剩下的字符串*代表任意,類(lèi)似 .* 輸出efgh
echo ${param1%gh} 	 #從右向左匹配截取剩下的字符串,注意必須從末尾開(kāi)始算,也就是說(shuō)不能寫(xiě)個(gè)_e開(kāi)始匹配, 輸出 abcd_ef
echo ${param1%_*} 	 #從右向左匹配截取剩下的字符串*代表任意,類(lèi)似 .* 輸出abcd_ef
echo ${param1:0-4} 	 #從右向左匹配2個(gè),截取 輸入 efgh
echo ${param1:0-4:2} #從右向左截取4個(gè),然后在從這4個(gè)中,從左向右截取2個(gè) 輸出 gh
  1. 數(shù)組

array=(a b c d) #數(shù)組的定義
echo ${array[*]} 或 echo ${array[@]} #輸出數(shù)組全部值 a b c d
echo ${array[0} # a 下標(biāo)式輸出
  1. 數(shù)字的運(yùn)算,必須用 “`”這個(gè)符號(hào)包起來(lái),這不是單引號(hào),是反引號(hào)

echo `expr 1 + 1 `  #加
echo `expr 2 - 1 `  #減
echo `expr 2 \* 2` #乘
echo `expr 4 / 2 ` #除
echo `expr 5 % 2 ` #取余數(shù)
let a=1+1
let b=2-1
echo $a $b  # let 定義一個(gè)或多個(gè)表達(dá)式
  1. if流程控制

if [  ] ;#條件,注意空格
then  	#執(zhí)行
elif	#條件
then	#執(zhí)行
else 	#否
fi 		#結(jié)束標(biāo)簽

 ! 	# 非 if [ $a !$b ]
 -a 	#and 與   if [ $a -a $b ]
 -o 	#or 或  if [ $a -o $b ]
 &&     # AND 
 || 	# OR
 
 數(shù)字的比較
 -eq	#檢測(cè)兩個(gè)數(shù)是否相等
 -ne	#檢測(cè)兩個(gè)數(shù)是否不相等
 -gt	#檢測(cè)左邊的數(shù)是否大于右邊的
 -lt	#檢測(cè)左邊的數(shù)是否小于右邊的
 -ge	#檢測(cè)左邊的數(shù)是否大于等于右邊的
 -le	#檢測(cè)左邊的數(shù)是否小于等于右邊的
 
 字符串的比較
 =	檢測(cè)兩個(gè)字符串是否相等
 !=	檢測(cè)兩個(gè)字符串是否不相等
 -z	檢測(cè)字符串長(zhǎng)度是否為0
 -n	檢測(cè)字符串長(zhǎng)度是否不為 0
 $	檢測(cè)字符串是否為空
 
 文件夾比較
 -e 判斷對(duì)象是否存在
 -d 判斷對(duì)象是否存在,并且為目錄
 -f 判斷對(duì)象是否存在,并且為常規(guī)文件
 -L 判斷對(duì)象是否存在,并且為符號(hào)鏈接
 -h 判斷對(duì)象是否存在,并且為軟鏈接
 -s 判斷對(duì)象是否存在,并且長(zhǎng)度不為0
 -r 判斷對(duì)象是否存在,并且可讀
 -w 判斷對(duì)象是否存在,并且可寫(xiě)
 -x 判斷對(duì)象是否存在,并且可執(zhí)行
 -O 判斷對(duì)象是否存在,并且屬于當(dāng)前用戶
 -G 判斷對(duì)象是否存在,并且屬于當(dāng)前用戶組
 -nt 判斷file1是否比f(wàn)ile2新  [ "/usr/test1.txt" -nt "/usr/test2.txt" ]
 -ot 判斷file1是否比f(wàn)ile2舊  [ "/usr/test1.txt" -ot "/usr/test2.txt" ]
  1. for 循環(huán)

param=(1 2 3 4 5 6 7 8)

for i in ${param[*]} # 這個(gè)in后面的要是輸出的形式展示
do 
	echo $i # 1 2 3 4 5 6 7 8
done
  1. while 循環(huán)

i=1
while(( $i<7 )) #當(dāng)這個(gè)條件成功,則不在執(zhí)行
do
	echo $i
	let "i++"  # 1 2 3 4 5 6
done
  1. break 跳出循環(huán)整個(gè)循環(huán)體都不在執(zhí)行,continue 跳過(guò)本次循環(huán)繼續(xù)下一個(gè)循環(huán),exit 結(jié)束腳本;

  2. 函數(shù)方法

#定義函數(shù)
function name(){
	return 1
}
name(){}
name 1 2 #函數(shù)調(diào)用,(1,2)是傳入的參數(shù)
param=$? #獲取函數(shù)renturn回來(lái)的值
echo $param #2 函數(shù)返回的值

感謝各位的閱讀,以上就是“如何使用sh腳本命令”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)如何使用sh腳本命令這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!


網(wǎng)頁(yè)名稱(chēng):如何使用sh腳本命令
本文網(wǎng)址:
http://fisionsoft.com.cn/article/gipdcj.html