freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

linux操作說(shuō)明shell_詳解(編輯修改稿)

2025-05-11 05:54 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 夠自動(dòng)的分辨出屬于自己的信箱信件啰!這樣一來(lái),設(shè)計(jì)程序的設(shè)計(jì)師就真的很方便的啦!當(dāng)然我們可以改變這些個(gè)變量,但是如果該變量是直接深植于套件當(dāng)中, 那么當(dāng)你修改了某些參數(shù)之后,嘿嘿!你的套件就必須要『由原始碼直接更新再編譯』 才行!這樣似乎很麻煩,所以啰,變量真的是很方便的啦!Tips:舉個(gè)簡(jiǎn)單的例子來(lái)說(shuō), sendmail 的 smtp 存放 mail 路徑是經(jīng)由 /etc/profile 里頭的: MAIL=/var/spool/mail/$USER來(lái)設(shè)定的,而當(dāng)我修改了上面這一個(gè)咚咚,然后重新開(kāi)機(jī)之后,嘿嘿嘿嘿! 我的郵件就可以存放到不同的路徑去了!而且不會(huì)有問(wèn)題!可以順利的『在 Linux 主機(jī)上面』收發(fā)。然而問(wèn)題發(fā)生在 pop3 這個(gè)服務(wù)上面,由于 pop3 的預(yù)設(shè)路徑是在 source code 里頭,而且就正是 /var/spool/mail 這個(gè)路徑,也就是說(shuō),不論我怎么修正我的『變量』, pop3 都不為所動(dòng)!唉~真慘,所以就無(wú)法直接以 pop3 來(lái)收信了(例如 OutLook 就不能工作了)!會(huì)發(fā)生密碼不接受的問(wèn)題呢! 再來(lái)繼續(xù)講到其它的變量功能好了,我們前面已經(jīng)提到過(guò)很多次,能不能執(zhí)行某個(gè)指令, 與 PATH 這個(gè)變量也有很大的關(guān)系的。舉例來(lái)說(shuō),我們?cè)谌魏蔚胤较逻_(dá) ls 這個(gè)指令時(shí),系統(tǒng)就是透過(guò) PATH 這個(gè)變量里面的內(nèi)容所記錄的路徑順序來(lái)搜尋指令的呢!如果在搜尋完 PATH 變量?jī)?nèi)的路徑還找不到 ls 這個(gè)指令時(shí), 就會(huì)在屏幕上顯示『 mand not found 』的錯(cuò)誤訊息了。這些還都只是系統(tǒng)預(yù)設(shè)的變量的目的,如果是個(gè)人的設(shè)定方面的應(yīng)用呢:例如你要寫一個(gè)大型的 script (批次文件)時(shí),有些數(shù)據(jù)因?yàn)榭赡苡捎谑褂谜吡?xí)慣的不同而有差異,比如說(shuō)路徑好了,由于該路徑在 script 被使用在相當(dāng)多的地方,如果下次換了一部主機(jī),都要修改 script 里面的所有路徑,那么我一定會(huì)瘋掉! 這個(gè)時(shí)候如果使用變量,而將該變量的定義寫在最前面,后面相關(guān)的路徑名稱都以變量來(lái)取代, 嘿嘿!那么你只要修改一行就等于修改整篇 script 了!方便的很!所以,良好的程序設(shè)計(jì)師都會(huì)善用變量的定義! ( 這個(gè)部分我們?cè)诤罄m(xù)的 shell script 再次提及的!)如果說(shuō)的學(xué)理一點(diǎn),那么由于在 Linux System 下面,所有的執(zhí)行續(xù)都是需要一個(gè)執(zhí)行碼, 而就如同上面提到的,你『真正以 shell 來(lái)跟 Linux 溝通,是在正確的登入 Linux 之后!』這個(gè)時(shí)候你就有一個(gè) bash 的執(zhí)行程序,也才可以真正的經(jīng)由 bash 來(lái)跟系統(tǒng)溝通啰!而在進(jìn)入 shell 之前,也正如同上面提到的,由于系統(tǒng)需要一些變量來(lái)提供他數(shù)據(jù)的存?。ɑ蛘呤且恍┉h(huán)境的設(shè)定參數(shù)值, 例如是否要顯示彩色等等的),所以就有一些所謂的『環(huán)境變量』 需要來(lái)讀入系統(tǒng)中了!這些環(huán)境變量例如 PATH、HOME、MAIL、SHELL 等等,都是很重要的, 為了區(qū)別與自訂變量的不同,環(huán)境變量通常以大寫字符來(lái)表示呢!好了,那么我們就簡(jiǎn)單的來(lái)對(duì)『什么是變量』作個(gè)簡(jiǎn)單的定義好了: 『變量就是以一組文字或符號(hào)等,來(lái)取代一些設(shè)定或者是一串保留的數(shù)據(jù)!』, 例如:我設(shè)定了『myname』就是『VBird』,所以當(dāng)你讀取 myname 這個(gè)變量的時(shí)候,系統(tǒng)自然就會(huì)知道!哈!那就是 VBird 啦!最簡(jiǎn)單的例子可以取 PATH 來(lái)說(shuō)明!如果你對(duì)于『相對(duì)路徑與絕對(duì)路徑』還有點(diǎn)印象的話, 那么應(yīng)該曉得『要下達(dá)正確的指令,應(yīng)該需要指定路徑與文件名』才行!例如你的 ls 指令應(yīng)該需要以『/bin/ls』來(lái)下達(dá)指令才對(duì),那么為何你在任意的路徑下都可以執(zhí)行 ls 呢?而不需要指定路徑呢?這是因?yàn)橄到y(tǒng)已經(jīng)預(yù)設(shè)了一些『搜尋路徑(PATH)』了, 所以當(dāng)你需要執(zhí)行一些指令的時(shí)候,系統(tǒng)就會(huì)依照該 PATH 的設(shè)定來(lái)進(jìn)行指令的搜尋!而這個(gè) PATH 就是所謂的變量了!那么如何『顯示變量』呢?這就需要使用到 echo 這個(gè)指令啦!變量的取用與設(shè)定:echo, 變量設(shè)定規(guī)則, unset說(shuō)的口沫橫飛的,也不知道『變量』與『變量代表的內(nèi)容』有啥關(guān)系? 當(dāng)然啦,那我們就將『變量』的『內(nèi)容』拿出來(lái)給您瞧瞧就好了。利用 echo 這個(gè)指令來(lái)取用變量, 但是,變量在被取用時(shí),前面必須要加上 $ 才行,舉例來(lái)說(shuō),要知道 PATH 的內(nèi)容,該如何是好?[root@linux ~] echo $variable[root@linux ~] echo $PATH/bin:/sbin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin[root@linux ~] echo ${PATH}變量的取用就如同上面的范例,利用 ehco 就能夠讀出,只是需要在變量名稱前面加上 $ , 或者是以 ${variable} 的方式來(lái)取用都可以!當(dāng)然啦,那個(gè) echo 的功能可是很多的, 我們這里單純是拿 echo 來(lái)讀出變量的內(nèi)容而已,更多的 echo 使用,請(qǐng)自行給他 man echo 吧! ^_^例題一:請(qǐng)?jiān)谄聊簧厦骘@示出您的環(huán)境變量 HOME 與 MAIL:答: echo $HOMEecho $MAILOK!現(xiàn)在我們知道了變量與變量?jī)?nèi)的之間的相關(guān)性了,好了,那么我要如何『設(shè)定』或者是『修改』 某個(gè)變量的內(nèi)容啊?!很簡(jiǎn)單啦!用『等號(hào)(=)』連接變量與他的內(nèi)容就好啦!舉例來(lái)說(shuō): 我要將 myname 這個(gè)變量名稱的內(nèi)容設(shè)定為 VBird ,那么:[root@linux ~] echo $myname ==這里并沒(méi)有任何數(shù)據(jù)~因?yàn)檫@個(gè)變量尚未被設(shè)定!是空的![root@linux ~] myname=VBird[root@linux ~] echo $mynameVBird ==出現(xiàn)了!因?yàn)檫@個(gè)變量已經(jīng)被設(shè)定了!瞧!如此一來(lái),這個(gè)變量名稱 myname 的內(nèi)容就帶有 VBird 這個(gè)數(shù)據(jù)啰~ 而由上面的例子當(dāng)中,我們也可以知道: 當(dāng)一個(gè)變量名稱尚未被設(shè)定時(shí),預(yù)設(shè)的內(nèi)容是『空』的。 另外,變量在設(shè)定時(shí),還是需要符合某些規(guī)定的,否則會(huì)設(shè)定失敗喔! 這些規(guī)則如下所示啊! 1. 變量與變量?jī)?nèi)容以等號(hào)『=』來(lái)連結(jié); 2. 等號(hào)兩邊不能直接接空格符; 3. 變量名稱只能是英文字母與數(shù)字,但是數(shù)字不能是開(kāi)頭字符; 4. 若有空格符可以使用雙引號(hào)『 』或單引號(hào)『 39。 』來(lái)將變量?jī)?nèi)容結(jié)合起來(lái),但須要特別留意, 雙引號(hào)內(nèi)的特殊字符可以保有變量特性,但是單引號(hào)內(nèi)的特殊字符則僅為一般字符; 5. 必要時(shí)需要以跳脫字符『 \ 』來(lái)將特殊符號(hào) ( 如 Enter, $, \, 空格符, 39。 等 ) 變成一般符號(hào); 6. 在一串指令中,還需要藉由其它的指令提供的信息,可以使用 quote 『 ` mand` 』;(特別特別注意,那個(gè) ` 是鍵盤上方的數(shù)字鍵 1 左邊那個(gè)按鍵,而不是單引號(hào)!) 7. 若該變量為擴(kuò)增變量?jī)?nèi)容時(shí),則需以雙引號(hào)及 $變量名稱 如:『 $PATH:/home』繼續(xù)累加內(nèi)容; 8. 若該變量需要在其它子程序執(zhí)行,則需要以 export 來(lái)使變量變成環(huán)境變量, 如『export PATH』; 9. 通常大寫字符為系統(tǒng)預(yù)設(shè)變量,自行設(shè)定變量可以使用小寫字符,方便判斷 ( 純粹依照使用者興趣與嗜好 ) ; 10. 取消變量的方法為:『unset 變量名稱』。底下我們舉幾個(gè)例子來(lái)讓您試看看,就知道怎么設(shè)定好您的變量啰!范例一:設(shè)定一變量 name ,且內(nèi)容為 VBird 。[root@linux ~] 12name=VBirdbash: 12name=VBird: mand not found ==屏幕會(huì)顯示錯(cuò)誤!因?yàn)椴荒芤詳?shù)字開(kāi)頭![root@linux ~] name = VBird ==還是錯(cuò)誤!因?yàn)橛锌瞻?![root@linux ~] name=VBird ==OK 的啦!范例二:承上題,若變量?jī)?nèi)容為 VBird39。s name 呢?[root@linux ~] name=VBird39。s name 因?yàn)閱我?hào)可以將 Enter 這個(gè)特殊字符取消,所以,您可以繼續(xù)在下一行輸入內(nèi)容~ 不過(guò),這與我們要達(dá)到的功能不同,所以,算是失敗的啦![root@linux ~] name=VBird39。s name ==OK 的啦![root@linux ~] name=VBird\39。s\ name 利用反斜線 (\) 跳脫特殊字符,例如單引號(hào)與空格鍵,這也是 OK 的啦!范例三:我要在 PATH 這個(gè)變量當(dāng)中『累加』:/home/dmtsai/bin 這個(gè)目錄[root@linux ~] PATH=$PATH:/home/dmtsai/bin[root@linux ~] PATH=$PATH:/home/dmtsai/bin 上面這兩種格式在 PATH 里頭的設(shè)定都是 OK 的!但是底下的例子就不見(jiàn)得啰!范例四:呈范例三,我要將 name 的內(nèi)容多出 yes 呢?[root@linux ~] name=$nameyes 知道了吧?如果沒(méi)有雙引號(hào),那么變量成了啥?name 的內(nèi)容是 $nameyes 這個(gè)變量! 呵呵!我們可沒(méi)有設(shè)定過(guò) nameyes 這個(gè)變量吶!所以,應(yīng)該是底下這樣才對(duì)![root@linux ~] name=$nameyes[root@linux ~] name=${name}yes范例五:如何讓我剛剛設(shè)定的 name=VBird 可以用在下個(gè) shell 的程序?[root@linux ~] name=VBird[root@linux ~] bash ==進(jìn)入到所謂的子程序[root@linux ~] echo $name ==嘿嘿!并沒(méi)有剛剛設(shè)定的內(nèi)容喔![root@linux ~] exit ==離開(kāi)剛剛的子程序[root@linux ~] export name[root@linux ~] bash ==進(jìn)入到所謂的子程序[root@linux ~] echo $name ==出現(xiàn)了設(shè)定值了![root@linux ~] exit ==離開(kāi)剛剛的子程序 什么是『子程序』呢?就是說(shuō),在我目前這個(gè) shell 的情況下, 去啟用另一個(gè)新的 shell ,新的那個(gè) shell 就是子程序啦!在一般的狀態(tài)下, 父程序的自訂變量是無(wú)法在子程序內(nèi)使用的。但是透過(guò) export 將變量變成 環(huán)境變量后,就能夠在子程序底下應(yīng)用了!很不賴吧!至于程序的相關(guān)概念, 我們會(huì)在『程序與資源管理』章節(jié)當(dāng)中提到的喔!范例六:如何進(jìn)入到您目前核心的模塊目錄?[root@linux ~] cd /lib/modules/`uname r`/kernel 每個(gè)操作系統(tǒng)核心版本都不相同,以 FC4 為例,他的預(yù)設(shè)核心版本是 所以,他的模塊目錄在 /lib/modules/。 因?yàn)槊總€(gè) distributions 的這個(gè)值都不相同,但是我們卻可以利用 uname r 這個(gè)指令 先取得版本信息,所以啰,就可以透過(guò)上面指令當(dāng)中的內(nèi)含指令 `uname r` 先取得版本輸出到 cd .. 那個(gè)指令當(dāng)中,就能夠順利的進(jìn)入目前核心的驅(qū)動(dòng)程序所放置 的目錄啰!很方便吧!范例七:取消剛剛設(shè)定的 name 這個(gè)變量?jī)?nèi)容[root@linux ~] unset name根據(jù)上面的案例你可以試試看!就可以了解變量的設(shè)定啰!這個(gè)是很重要的呦!請(qǐng)勤加練習(xí)?。?其中,較為重要的一些特殊符號(hào)的使用啰!例如單引號(hào)、雙引號(hào)、跳脫字符、錢字號(hào)、quote 符號(hào)等等,底下的例題想一想吧!例題二:在變量的設(shè)定當(dāng)中,單引號(hào)與雙引號(hào)的用途有何不同?答: 單引號(hào)與雙引號(hào)的最大不同在于雙引號(hào)仍然可以保有變量的內(nèi)容,但單引號(hào)內(nèi)僅能是一般字符 ,而不會(huì)有特殊符號(hào)。我們以底下的例子做說(shuō)明:假設(shè)您定義了一個(gè)變量, name=VBird ,現(xiàn)在想以 name 這個(gè)變量的內(nèi)容定義出 myname 顯示 VBird its me 這個(gè)內(nèi)容,要如何訂定呢? [root@linux ~] name=VBird[root@linux ~] echo $nameVBird[root@linux ~] myname=$name its me[root@linux ~] echo $mynameVBird its me[root@linux ~] myname=39。$name its me39。[root@linux ~] echo $myname$name its me發(fā)現(xiàn)了嗎?沒(méi)錯(cuò)!使用了單引號(hào)的時(shí)候,那么 $name 將失去原有的變量?jī)?nèi)容, 僅為一般字符的顯示型態(tài)而已!這里必需要特別小心在意!例題三:在指令下達(dá)的過(guò)程中, quote ( ` ) 這個(gè)符號(hào)代表的意義為何?答: 在一串指令中,在 ` 之內(nèi)的指令將會(huì)被先執(zhí)行,而其執(zhí)行出來(lái)的結(jié)果將做為外部的輸入信息!例如 uname r 會(huì)顯示出目前的核心版本,而我們的核心版本在 /lib/modules 里面,因此,你可以先執(zhí)行 uname r 找出核心版本,然后再以『 cd 目錄』到該目錄下,當(dāng)然也可以執(zhí)行如同上面范例六的執(zhí)行內(nèi)容啰。 另外再舉個(gè)例子,我們也知道, locate 指令可以列出所有的相關(guān)檔案檔名,但是, 如果我想要知道各個(gè)檔案的權(quán)限呢?舉例來(lái)說(shuō),我想要知道每個(gè) crontab 相關(guān)檔名的權(quán)限: [root@linux ~] ls l `locate crontab`如此一來(lái),先以 locate 將文件名數(shù)據(jù)都列出來(lái),再以 ls 指令來(lái)處理的意思啦!瞭了嗎? ^_^變數(shù)的用途我們知道 PATH 這個(gè)變量是我們?cè)趫?zhí)行指令的時(shí)候,所需要具備的指令搜尋目錄數(shù)據(jù), 沒(méi)有他,我們就得
點(diǎn)擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1