日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

Unix中利用轉(zhuǎn)義和引用來管理元字符

瀏覽:271日期:2024-06-08 11:02:29

在Unix操作系統(tǒng)中有一類特殊的字符,叫做元字符。他們在系統(tǒng)中表示特殊的含義。如*號與?號,操作系統(tǒng)認(rèn)為這些元字符是通配符。如果在路經(jīng)、文件名或者命令參數(shù)中有這些元字符的話,就會引起操作系統(tǒng)的誤解。為此在系統(tǒng)中要采用一些方法,能夠讓操作系統(tǒng)將這些元字符當(dāng)作普通字符來對待。在Unix系統(tǒng)中,就是采用轉(zhuǎn)義和引用這兩種方式來處理。系統(tǒng)工程師需要明白的是,這兩種解決方案的差異。并在特定的情況下,采用合適的解決方式。

一、轉(zhuǎn)義功能的應(yīng)用。

其實轉(zhuǎn)義機(jī)制不僅僅在Unix操作系統(tǒng)上有,在其他的編程語言中也有類似的處理機(jī)制。如果各位讀者有程序開發(fā)經(jīng)驗的話,那么可能更加容易了解這個轉(zhuǎn)義功能。簡單的說,轉(zhuǎn)義功能就是指在一些具有特殊含義的元字符前面加上一個轉(zhuǎn)義字符,目的是告訴操作系統(tǒng)這是一個普通的字符,取消元字符的特殊意義。如*本來代表通配符,如ls *則表示所有的文件與目錄。而*就是將*號當(dāng)作一個普通的字符來對待,系統(tǒng)不會再認(rèn)為其是一個通配符。

這個轉(zhuǎn)義功能的普通應(yīng)用是比較簡單的,只需要在元字符前面加上即可。不過筆者這里還需要強(qiáng)調(diào)轉(zhuǎn)義字符的幾個特殊的應(yīng)用。這些應(yīng)用雖然比較特殊,普通用戶平時不怎么用的到。但是對于系統(tǒng)工程師來說,這些功能可能就特別的有用。

一是需要在文件名中插入空格。如在微軟操作系統(tǒng)中有一個My Documents文件夾,其中間就有一個空格。這個空格在Unix系統(tǒng)中也屬于一個特殊的原字符。如果在建立文件或者目錄時,直接加入空格,則Unix操作系統(tǒng)會提示錯誤信息。此時往往需要轉(zhuǎn)移字符的幫助。如使用命令mkdir My Documents,就可以建立中間帶有空格的目錄名。如要建立帶有空格的文件名,也是如此。不過需要注意是,如果在文件或者目錄中包含了元字符的話,那么在使用刪除命令或者目錄定位命令的時候,也需要采用轉(zhuǎn)移字符來定義這些特殊的元字符,否則的話可能會出現(xiàn)一些莫名其妙的問題。

二是利用轉(zhuǎn)義字符對命令進(jìn)行換行。在Unix操作系統(tǒng)中有些命令特別復(fù)雜,特別是那些部屬在Unix操作系統(tǒng)上的命令。如expdp是Oracle數(shù)據(jù)庫中的一個數(shù)據(jù)庫對象導(dǎo)出命令。雖然這個命令的功能很強(qiáng)大,但是可惜的是只有通過復(fù)雜的參數(shù)才能夠完成一些特定的功能。有時候一個命令需要好幾行才能夠?qū)懲辍km然Unix操作系統(tǒng)提供了命令自動換行的方法。但是這個自動換行的功能比較薄弱,如不會在系統(tǒng)工程想要換行地方進(jìn)行換行。為此采用這個自動換行的話,會造成代碼閱讀的困難。所以不少系統(tǒng)工程師還是希望能夠自己手工進(jìn)行分行,在某些關(guān)鍵參數(shù)后面進(jìn)行分行,以增加命令的可閱讀性。但是,如果直接使用回車鍵分行的話,系統(tǒng)是不認(rèn)可的。因為這個回車鍵系統(tǒng)認(rèn)為是一個執(zhí)行命令的鍵。即當(dāng)系統(tǒng)工程師點擊回車鍵的時候,系統(tǒng)會認(rèn)為用戶已經(jīng)將命令輸入完畢。鍵入回車鍵后系統(tǒng)就會自動運行這個命令。所以直接鍵入回車鍵往往不能夠完成命令分行的需求。此時就需要轉(zhuǎn)義字符的幫助。如現(xiàn)有一個命令比較長,工程師希望能夠?qū)⑵浞譃閮尚校饕菍?shù)-name后面的內(nèi)容另起一行。此時就可以在這個參數(shù)前面加入一個轉(zhuǎn)義字符,然后再按回車鍵即可。由于有了這個轉(zhuǎn)義字符,系統(tǒng)就會取消回車鍵的換行作用。如此操作之后,系統(tǒng)會出現(xiàn)一個次級提示符,這個次級提示符表示命令還沒有結(jié)束,下一行繼續(xù)。這個功能對于系統(tǒng)工程師來說,可能是非常實用的。因為此時系統(tǒng)工程師可以輕松的將一長串的命令根據(jù)自己的需要來進(jìn)行分行,從而提高命令的可讀性。

另外需要注意的是,這個轉(zhuǎn)義字符本身就是一個比較特殊的元字符。如果用戶想在命令或者文件名中使用這個符號的話,也需要采用轉(zhuǎn)移字符。如用戶想利用echo或者printf命令顯示網(wǎng)址。在網(wǎng)址中就有很多符號,此時就需要采用轉(zhuǎn)義字符來讓系統(tǒng)將符號當(dāng)作普通字符來對待。

二、利用引用來解決元字符的問題。

除了可以利用上面談到的引用功能來處理這些元字符以外,還可以采用引用這個功能來解決。簡單的說,就是將一個命令參數(shù)放置在一對引號之內(nèi),則這個引號之內(nèi)內(nèi)容如果有元字符的話,則這些元字符將不起作用。那么既然轉(zhuǎn)義功能已經(jīng)可以解決元字符的問題,系統(tǒng)還提出了一個引用的解決方案,是否多次一舉呢?其實不然。當(dāng)一個命令行中含有多個元字符的時候,需要在每個元字符前面加一個轉(zhuǎn)移字符。為此此時如果采用轉(zhuǎn)義字符來解決這個元字符的問題時,會非常的繁瑣。此時如果采用引用機(jī)制來解決元字符的問題時,可能會更加的理想。如現(xiàn)在系統(tǒng)工程師希望能夠在屏幕上打出如下信息(這是一個共享文件的路徑):192.128.11.3shareITsoftwarepdf。如果采用轉(zhuǎn)移字符的話,該如何寫呢?由于這個輸出結(jié)果中有四個元字符(轉(zhuǎn)義字符),為此管理員不得不用四個轉(zhuǎn)移字符來處理。即要寫成echo 192.128.11.3shareITsoftwarepdf。這顯然非常的麻煩。遇到這種情況時,如果采用引用的話,顯然會更加的合適。如采用引用機(jī)制,只需要將這個命令寫為即可:

echo ‘192.128.11.3shareITsoftwarepdf’

將一大串命令采用單引號因起來。則系統(tǒng)會將命令行中的一些元字符都當(dāng)作普通字符來對待。即不需要為每一個元字符采用轉(zhuǎn)移字符。顯然這個引用解決方案要比采用轉(zhuǎn)義字符來解決要方便的多。

在采用引用機(jī)制來處理元字符時,需要注意跟雙引號的區(qū)別。如現(xiàn)在有如下三個命令echo $JAVA_HOME、echo ‘$JAVA_HOME’、 “echo $JAVA_HOME。其中$JAVA_HOME表示應(yīng)用程序Java的環(huán)境變量。此時如果系統(tǒng)工程師依次運行上面這三個命令,會有什么結(jié)果呢?第一個命令會正常顯示Java的環(huán)境變量;第二個命令直接顯示$JAVA_HOME,即已經(jīng)將元字符$當(dāng)作普通字符來對待。第三個命令的話仍然顯示Java的環(huán)境變量。可見雙引號與單引號在引用機(jī)制上,還是有所不同的。那么他們到底有什么差異呢?總的來說,系統(tǒng)工程師需要注意如下內(nèi)容。單引號會保護(hù)里面所有的元字符,即遇到元字符時會告訴系統(tǒng)當(dāng)作普通字符來對待。但是如果采用了雙引號,則系統(tǒng)會將單引號之間的內(nèi)容解釋為命令行。如會將$當(dāng)作環(huán)境變量的前綴等等。其實單引號與雙引號還有一種相互保護(hù)的作用。即雙引號保護(hù)其中的單引號,而單引號保護(hù)其中的雙引號。因為無論是雙引號還是單引號本身就都是元字符,可以通過引用機(jī)制來進(jìn)行保護(hù)。不過在遇到單引號與雙引號(都當(dāng)作普通字符)都存在的情況下,筆者建議還是采用轉(zhuǎn)移字符來保護(hù)單引號或者雙引號為好。這可以避免誤解,也容易提高代碼的可讀性。同理,如果要將轉(zhuǎn)移字符 當(dāng)作普通字符來實用的話,那么最好也是利用單引號來保護(hù)這個轉(zhuǎn)移字符,而不是利用轉(zhuǎn)移字符來保護(hù)轉(zhuǎn)移字符。這些雖然不影響實際的應(yīng)用,但是卻是提高代碼可讀性的有效手段。

從以上的分析中可以看出,雖然轉(zhuǎn)移字符與引用機(jī)制等等都可以將元字符當(dāng)作普通字符來對待。但是,兩者在實現(xiàn)的方法上還是有一定的差異。為此最好能夠根據(jù)應(yīng)用場合的不同,在選擇合適的解決方案。一般來說,兩者的差異只是實現(xiàn)方法上的差異,在具體的功能上沒有區(qū)別。不過為了代碼的易讀性上考慮,選擇具體的解決方案是還需要慎重。不過總的來說,系統(tǒng)工程師必須同時掌握這兩種方法。然后根據(jù)不同的情況現(xiàn)在合適的解決方法。如果光掌握一種解決措施,可能不能夠解決所有跟元字符相關(guān)的問題。

標(biāo)簽: Unix系統(tǒng)
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩久久精品| 日韩视频网站在线观看| 亚洲资源在线| 老司机免费视频一区二区三区| 久久精品国产亚洲aⅴ| 亚洲福利精品| 麻豆精品视频在线| 亚洲免费在线| 神马日本精品| 老色鬼精品视频在线观看播放| 免费在线欧美黄色| 久久夜夜操妹子| 日韩黄色在线观看| 国产精品久久免费视频| 国产精品网站在线看| 国产欧美日韩综合一区在线播放| 丝袜美腿一区二区三区| 亚洲视频二区| 国产精品一区二区精品| 国产一区二区三区不卡视频网站 | 日韩中文字幕区一区有砖一区| 欧美日韩国产欧| 日韩精品一区二区三区免费视频| 欧美日韩91| 午夜影院一区| 亚洲一二三区视频| 久久久久久色| 成人国产精品久久| 欧美色图国产精品| 国产探花一区在线观看| 国产 日韩 欧美一区| 亚洲黄色在线| 欧美日韩一视频区二区| 亚洲永久av| 91嫩草精品| 色天使综合视频| 日韩手机在线| 色网在线免费观看| 亚洲午夜一级| 日韩精品视频网站| 国产日产高清欧美一区二区三区| 国产精品中文字幕亚洲欧美| 亚洲三级网址| 伊人久久视频| 欧美亚洲一区二区三区| 亚洲一区国产一区| 色综合视频一区二区三区日韩| 精品一区二区三区视频在线播放| 日韩精品一二三| 亚洲黄色在线| 日韩中文字幕区一区有砖一区 | 最新国产拍偷乱拍精品| 男人的天堂久久精品| 婷婷视频一区二区三区| 久久99国产精品视频| 婷婷精品视频| 国产亚洲精品精品国产亚洲综合| 成人福利视频| 欧美日本精品| 水蜜桃久久夜色精品一区的特点| 天堂av在线| jizzjizz中国精品麻豆| 国产精品国码视频| 先锋影音久久久| 夜久久久久久| 91精品国产自产在线丝袜啪| 美女精品在线| 亚洲精品在线a| 亚洲免费毛片| 蘑菇福利视频一区播放| 国产精品久久久久久久久久白浆| 国产精品视频一区二区三区| 久久99青青| 蜜桃免费网站一区二区三区| 国产欧美一区二区三区精品酒店| 日韩精品免费视频一区二区三区| 日韩三区免费| 国产精品99久久久久久董美香| 日韩一级网站| 国产精品久久久久久久久久10秀| 蜜桃传媒麻豆第一区在线观看| av高清不卡| 精品一区av| 人人爱人人干婷婷丁香亚洲| 免费成人在线影院| 在线一区视频| 好吊视频一区二区三区四区| 精品国产99| 国产一区二区三区网| 亚洲丝袜啪啪| 最新日韩av| 在线视频精品| 午夜精品一区二区三区国产| 国产不卡一区| 精品一区二区男人吃奶| 日本欧美一区二区在线观看| 亚洲日本国产| 日韩av网站在线观看| 欧美一区二区三区久久精品| 色狠狠一区二区三区| 亚洲综合另类| 911精品国产| 麻豆91精品视频| 黄色在线网站噜噜噜| 欧美精品日日操| 日韩精品诱惑一区?区三区| 日韩不卡免费高清视频| 99久久精品网| 老司机精品久久| 日韩精品一二三| 中文字幕中文字幕精品| 国产日韩高清一区二区三区在线| 国产精区一区二区| 精品入口麻豆88视频| 1000部精品久久久久久久久| 欧美另类综合| 日本综合精品一区| 亚洲黄色中文字幕| 国产中文在线播放| 国产精品日韩| 麻豆精品视频在线| 欧美成人国产| 国产高清日韩| 亚洲精品电影| 日韩和欧美一区二区| 激情黄产视频在线免费观看| 黄色亚洲大片免费在线观看| 国产日韩欧美三级| 亚洲精品一区二区在线看| 国产亚洲精品美女久久| 亚洲夜间福利| 国产免费久久| 日韩精品一二三| 色88888久久久久久影院| 视频国产精品| 国产精品99免费看| 欧美激情99| 中文字幕日韩亚洲| 亚洲二区视频| 欧美久久精品| 亚洲激情婷婷| 欧美91精品| 91视频久久| 精品九九久久| 欧美成人精品一级| 国产日韩免费| 色综合视频一区二区三区日韩| 日韩欧美另类一区二区| 欧美亚洲一级| 日韩中文字幕视频网| 日韩高清在线观看一区二区| 另类国产ts人妖高潮视频| 国产成人精品三级高清久久91| 欧美欧美黄在线二区| 日韩精品免费视频人成| 亚洲成人日韩| 亚洲少妇诱惑| 丝瓜av网站精品一区二区| 亚洲综合另类| 一级欧美视频| 婷婷视频一区二区三区| 麻豆精品91| 日本天堂一区| 国产精品亚洲成在人线| 久久影院一区二区三区| 麻豆91在线播放| 成人av三级| 黄色日韩在线| 亚洲精品伊人| 国产精品最新自拍| 日本v片在线高清不卡在线观看| 蜜桃av一区二区三区电影| 蜜桃av一区| 日韩黄色免费网站| 麻豆精品在线| 亚洲91久久| 亚洲精品美女91| 亚洲一级二级| 日韩欧乱色一区二区三区在线| 国产精品一级在线观看| 日韩中文字幕高清在线观看| 五月天久久久| 欧美一区在线观看视频| 国产精品日韩精品在线播放| 亚洲精品一级二级| 激情综合网站| 国产精品多人| 蜜桃国内精品久久久久软件9| 快she精品国产999| 欧美精品99| 国产亚洲精品自拍| 国产suv精品一区| 久久亚洲美女| 成人片免费看| 欧美亚洲综合视频| 尤物在线精品| 91一区二区| 日本欧美韩国一区三区| 99久久久久国产精品| 国产剧情在线观看一区|