六月丁香五月婷婷,丁香五月婷婷网,欧美激情网站,日本护士xxxx,禁止18岁天天操夜夜操,18岁禁止1000免费,国产福利无码一区色费

學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 >

Linux中引號(hào)使用方法注意事項(xiàng)

時(shí)間: 加城1195 分享

  Linux繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計(jì)思想,是一個(gè)性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)。很多時(shí)候我們使用命令要很小心,細(xì)節(jié)到一個(gè)符號(hào)就可完全改變命令含義,這篇文章主要給大家介紹了關(guān)于Linux中關(guān)于引號(hào)的那些事,文中詳細(xì)介紹了關(guān)于引號(hào)、單引號(hào)和雙引號(hào)、引用單個(gè)字符以及反斜杠的其他使用技巧等的相關(guān)內(nèi)容。

  引號(hào)

  我們將把編寫腳本的事情暫時(shí)擱在一邊,然后來討論一些,我們一直在用的,但是沒有解釋的東西。引號(hào)在這一節(jié)里面,我們會(huì)講述引號(hào)。引號(hào)有兩個(gè)作用:

  控制字符替換 和

  執(zhí)行將單詞包含在一起的功能

  我們已經(jīng)使用過引號(hào)。在我們的腳本里面,將文本信息賦值給常量的賦值操作就使用了引號(hào):

  在上面這個(gè)例子中,文本信息是被雙引號(hào)包括住的。我們使用雙引號(hào)的原因是---我們要把所有單詞包括住,當(dāng)作一個(gè)整體來對(duì)待。如果我們沒有使用引號(hào),那么bash解釋器,就會(huì)將所有位于第一個(gè)單詞后面的單詞,解釋為其他的命令(第一個(gè)單詞被解釋為命令)。

  嘗試一下運(yùn)行下面的命令,看看有什么效果出來:

  單引號(hào)和雙引號(hào)

  shell解釋器可以識(shí)別雙引號(hào)和單引號(hào)。 下面的復(fù)制表達(dá)式效果是等價(jià)的:

  然而,在雙引號(hào)和單引號(hào)之間存在一個(gè)重要的差別。 單引號(hào),在字符替換方面有限制。 正如我們?cè)谏弦还?jié)所看到的內(nèi)容一樣,你可以將一個(gè)變量放在雙引號(hào)里面,而shell解釋器依然會(huì)對(duì)變量執(zhí)行字符替換的操作。

  我們可以通過使用echo命令來查看這種效果:

  如果我們將上述的雙引號(hào)改為單引號(hào),那么,行為將會(huì)改變:

  雙引號(hào)并沒有限制---以"$"開頭的變量的字符替換,不過,它的確對(duì)通配符的擴(kuò)展效果進(jìn)行了限制。

  比如,下面這個(gè)例子:

  引用單個(gè)字符

  還有另外一種引用字符你會(huì)碰到的。 它就是反斜杠。The backslash tells 反斜杠告訴shell解釋器忽略反斜杠符后面的第一個(gè)字符。比如:

  通過使用反斜杠符,shell解釋器忽略了對(duì)"$"符號(hào)進(jìn)行解釋。既然shell已經(jīng)忽略了"$",那么,shell解釋器也就不會(huì)對(duì)$HOSTNAME執(zhí)行字符替換了。

  下面,給出一個(gè)更有用例子:

  正如你所看到的,通過使用反斜杠符號(hào),我們可以將雙引號(hào)包含在文本里面。

  反斜杠的其他使用技巧

  如果,你閱讀過任何軟件的使用手冊(cè),并且這手冊(cè)是由GNU項(xiàng)目完成的,那么,你會(huì)發(fā)現(xiàn),在軟件的命令選項(xiàng)中,除了以一個(gè)下劃線_加一個(gè)字母的形式出現(xiàn)之外,還有,以兩個(gè)下劃線加一個(gè)完整的單詞的形式出現(xiàn)。例如,下面兩個(gè)語句是等價(jià)的:

  為什么在軟件中,這兩種形式都是支持的呢?短的那種形式,是專門為那些懶的輸入員而設(shè)定的,而長的那種形式,是專門為寫腳本而存在的。我有時(shí)候,是混合著使用上面的兩種形式,然后,我發(fā)現(xiàn)采用長的命令選項(xiàng)有用,如果,我寫了一個(gè)腳本,并且,我將在幾個(gè)月后去閱讀它??吹介L的命令選項(xiàng),有助于我理解這個(gè)命令選項(xiàng)是什么意思,從而省卻我去查man手冊(cè)的功夫?,F(xiàn)在多敲幾下鍵盤,會(huì)以后節(jié)省很多功夫。 這樣,懶惰的原則就保持住了。

  你有可能會(huì)疑慮,使用長的命令形式,會(huì)導(dǎo)致一個(gè)單獨(dú)的命令變得很長。 為了與這個(gè)問題斗爭,你可以使用反斜杠來讓shell解釋器忽略換行符號(hào),正如下面的操作:

  這樣使用反斜杠,可以讓我們將每行的內(nèi)容包含在一個(gè)單獨(dú)的命令中。讓這個(gè)技巧可以應(yīng)用,要注意的地方:換行,必須在反斜杠后面馬上出現(xiàn)(也就是,在輸入了反斜杠之后,就必須換行了)。 如果,你將一個(gè)空格符放置在反斜杠后面,那么,空格符號(hào)會(huì)被忽略,而不是換行符被忽略。反斜杠符,也可以被用于,將特殊的符號(hào)插入到文本。special characters into our text. 這些符號(hào),被叫做---轉(zhuǎn)移字符,下面就有一些轉(zhuǎn)移字符:

  轉(zhuǎn)義字符 .......................

  名字

  可能的用途

  n

  換行符

  添加空白行在文本中

  t

  制表符

  將水平制表符添加到文本中

  a

  提醒

  讓你的終端發(fā)出嘟嘟聲。

  \

  反斜杠

  插入一個(gè)反斜杠符

  f

  formfeed

  Sending this to your printer ejects thepage

  轉(zhuǎn)移字符的應(yīng)用很常見。非常常見轉(zhuǎn)移字符,這個(gè)想法,首先出現(xiàn)在C語言里面。編程語言今天,shell解釋程序,C++,perl,python,awk,tcl和其他程序語言都使用了轉(zhuǎn)移字符這個(gè)概念。通過使用echo命令的-e選項(xiàng),我們將展示上述轉(zhuǎn)移字符的應(yīng)用:

  補(bǔ)充:Linux基本命令

 ?、賚s 意為list 列出當(dāng)前文件夾中的文件

  -l 顯示文件的屬性 可用ll來表示

 ?、赼lias 別名 看看是否有別名的文件

 ?、踓d dir 跳躍目錄 -P選項(xiàng) 將路徑中的鏈接文件替換成鏈接指向的文件路徑

  ④pwd 查看當(dāng)前工作的文件夾名 使用-P的選項(xiàng),會(huì)直接進(jìn)入到其中,相當(dāng)于cd

  相關(guān)閱讀:Linuxshell腳本不執(zhí)行問題實(shí)例分析

  shell腳本不執(zhí)行問題:某天研發(fā)某同事找我說幫他看看他寫的shell腳本,死活不執(zhí)行,報(bào)錯(cuò)。我看了下,腳本很簡單,也沒有常規(guī)性的錯(cuò)誤,報(bào)“:badinterpreter:Nosuchfileordirectory”錯(cuò)??催@錯(cuò),我就問他是不是在windows下編寫的腳本,然后在上傳到linux服務(wù)器的……果然。原因:在DOS/windows里,文本文件的換行符為rn,而在*nix系統(tǒng)里則為n,所以DOS/Windows里編輯過的文本文件到了*nix里,每一行都多了個(gè)^M。解決:

  1)重新在linux下編寫腳本;

  2)vi:%s/r//g:%s/^M//g(^M輸入用Ctrl+v,Ctrl+m)附:sh-x腳本文件名,可以單步執(zhí)行并回顯結(jié)果,有助于排查復(fù)雜腳本問題。


Linux中引號(hào)使用相關(guān)文章:

1.linux shell print命令

2.linux tshark命令

3.linux中的rename命令的詳細(xì)解釋

4.Linux通過命令查找替換文本內(nèi)容的方法

5.Excel中介紹單引號(hào)的妙用

4017066