大括號(hào){}出現(xiàn)在shell腳本的各個(gè)角落,其用法也各有不同。同音多義字在漢語中最容易讓人混淆,而大括號(hào)也正是bash語言中的“同音多義字”。下面我就為大家介紹c語言大括號(hào)的用法。 {}第一種用法,符號(hào)擴(kuò)展 #!/bin/bash echo \"{hello,world}\" ####################### # 輸出為:"hello" "world" ####################### echo {a..c} #只能是.. ###################### # 輸出為: a b c ###################### {}第二種用法,代碼塊表示法,與c語言中的作用相似,c語言中,有了{(lán)}的代碼塊,其變量作用域就改變了;bash中,卻不存在這個(gè)功能,在{}中的內(nèi)容,仍然與外部變量名相通。此外,{}代碼塊表示法還有一個(gè)作用,就是將代碼塊內(nèi)所有的輸入輸出信息重定向。 #腳本1 #!/bin/bash a=123 { a=321; } #大括號(hào)兩邊內(nèi)部變量與大括號(hào)之間一定要用空格隔開 echo "a = $a " #輸出 a=321 #腳本2 #!/bin/bash File="`pwd`/fas" #fas是由自己在當(dāng)前目錄創(chuàng)建的文件 { read line1 read line2 } $File #此處進(jìn)行重定向,將fas文件的內(nèi)容讀入到line1和line2 echo "First line in $File is: " echo "$line1" echo echo "second line in $File is :" echo "$line2" exit 0 與大括號(hào){}有些相似的符號(hào)是圓括號(hào)()。但圓括號(hào)()內(nèi)的代碼將啟動(dòng)一個(gè)子shell來運(yùn)行,{}不會(huì)這樣。 #!/bin/bash a=123 ( a=321; ) echo "a = $a" #a=123 附注: 1.如果想讓你的腳本像ls等命令一樣通用,那么需要將命令復(fù)制到/usr/local/bin,并使用chmod 777 filename修改其執(zhí)行權(quán)限。 2./bin目錄、/sbin目錄、/usr/local/bin/目錄、/usr/local/sbin目錄、/usr/bin目錄、/usr/sbin目錄的區(qū)別與聯(lián)系 最需要注意的一點(diǎn),usr不是user的意思,而是unix system resource的簡稱,也就是unix系統(tǒng)資源。在/usr這個(gè)目錄下,放了一些系統(tǒng) 相同之處:都是一些命令; 不同之處: /bin:基本命令 /sbin:基本系統(tǒng)命令 /usr/bin:與/bin類似,包括此后安裝軟件的命令 /usr/sbin:與/sbin類似,包括此后增加的系統(tǒng)管理的一些命令 /usr/local/bin:與/bin,/usr/bin類似,但是局部(local)范圍,linux是多用戶系統(tǒng),有分級(jí)的權(quán)限,有些軟件內(nèi)容必須添加在/usr/local/bin,而不是/usr /usr/local/sbin:同上 3.好腳本需要珍藏,以備不時(shí)之需。
上栗網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,上栗網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為上栗超過千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)公司要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的上栗做網(wǎng)站的公司定做!
大括號(hào)是一組語句的組合;
大括號(hào)的作用是將多條語句(每個(gè)語句以分號(hào);結(jié)尾)合成一個(gè)復(fù)合語句(可理解看作一個(gè)大語句,較長的語句) 例如 int x=1; if(x!=1) {x=5; x=x+1; } 結(jié)果是x=1,如果不加大括號(hào),則是x=2
只要是括號(hào)就需要配對(duì)出現(xiàn)的,大括號(hào)起的作用主要就是劃分區(qū)域用的。比如:if(ab) println("ab");與if(ab) { println("ab"); }其實(shí)效果是一樣的但有的時(shí)候是必須用到大括號(hào)的。比如當(dāng)if語句后有多條語句的話就需要大括號(hào)與別的語句繼續(xù)區(qū)分。
小括號(hào)則有多種功能:
例如:
(1+5)*6
func()
for(i=1;i5;i++)
大括號(hào)也稱花括號(hào)是程序塊的分界符,大括號(hào)起的作用主要就是劃分區(qū)域用的。
沒有規(guī)定for后面一定要加大括號(hào),如果for循環(huán)里只有一個(gè)語句,如果有多個(gè)語句,就需要用一個(gè)大括號(hào)把他們包起來。
比如:if(ab) println("ab");與if(ab) { println("ab"); },其實(shí)效果是一樣的但有的時(shí)候是必須用到大括號(hào)的。
比如:當(dāng)if語句后有多條語句的話就需要大括號(hào)與別的語句繼續(xù)區(qū)分。比如:if(ab){ max=a; println("max=%d",c);}。
擴(kuò)展資料
大括號(hào)號(hào)使用注意事項(xiàng):
在KbR格式中,開括號(hào)總是與使用它的語句在同一行上,而閉括號(hào)總是在它所關(guān)閉的語句的下一行上,并且與該語句對(duì)齊。例如,在上例中,if語句的開括號(hào)和它在同一行上,|f語句的閉括號(hào)在它的下一行上,并且與它對(duì)齊。
在與if語句對(duì)應(yīng)的else條件語句以及出現(xiàn)在程序段后部的while語句中,情況也是這樣的。在Allman格式中,每個(gè)大括號(hào)都單獨(dú)成行,并且開括號(hào)和閉括號(hào)都與使用它們的語句對(duì)齊。與Allman格式相同,Whitesmiths格式也要求大括號(hào)單獨(dú)成行,但是它們要和它們所包含的語句對(duì)齊。
例如,在if語句的開括號(hào)是與第一個(gè)printf()函數(shù)調(diào)用對(duì)齊的。不管使用哪一種格式,一定要保持前后一致——這將有助于其它人更方便地讀程序。
參考資料來源:百度百科—大括號(hào)