第五節(jié)環(huán)境變量與文件查找

一拜秧、關(guān)于環(huán)境變量

1奈嘿、變量:用于記錄一個(gè)值的符號

? ?(注意:Shell變量不用專門指定類型名)

變量的作用域: 變量的有效范圍

? ( 注意:在該范圍內(nèi)只能有一個(gè)同名變量)

在shell中如何創(chuàng)建一個(gè)變量:

? ?1) $ ?declare ? 變量名

? ?2) 即用即創(chuàng)建

為變量賦值: 變量名=內(nèi)容

讀取變量的值:echo ? $變量名

變量名的命名規(guī)則:只能是英文萌庆、數(shù)字和下劃線恼布,且不能數(shù)字開頭

2本慕、環(huán)境變量:在當(dāng)前進(jìn)程的子進(jìn)程有效的變量糊治,作用域比自定義變量的大猜惋。

eg:Shell的環(huán)境變量作用于自身和它的子進(jìn)程丸氛。

注意:在shell中運(yùn)行的大部分命令都將以Shell的子進(jìn)程的方式運(yùn)行。

? ? ? ? ?為了將環(huán)境變量和普通變量進(jìn)行區(qū)分:習(xí)慣將環(huán)境變量名設(shè)為大寫

3著摔、通常涉及到的變量類型:

? ? 1)當(dāng)前Shell進(jìn)程私有用戶自定義變量(只在當(dāng)前Shell中有效)

? ? 2)Shell本身內(nèi)建的變量

? ? 3)從自定義變量導(dǎo)出的環(huán)境變量

4缓窜、打印環(huán)境變量信息:

? ?set: ? ?顯示當(dāng)前Shell的所有變量,包括其內(nèi)建環(huán)境變量(于Shell外觀相關(guān))、用戶自定義變量和導(dǎo)出的環(huán)境變量

? ?env: ? 顯示于當(dāng)前用戶相關(guān)的環(huán)境變量雹洗,還可以讓命令在指定環(huán)境中運(yùn)行香罐。

? ?export: ?顯示從Shell中導(dǎo)出成環(huán)境變量的變量,也能通過它將自定義變量導(dǎo)出為環(huán)境變量

? ?上述三者區(qū)別在于涉及的變量范圍不同时肿”用#可以通過vimdiff工具比較三者差別

案例分析:

temp=zhangsan ? ? ? ?創(chuàng)建一個(gè)變量

echo ? $temp ? ? ? ? ? ?查看變量值結(jié)果輸出zhangsan

zsh ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?建立一個(gè)子進(jìn)程

echo ? $temp ? ? ? ? ? ? ?查看變量值 ? 結(jié)果輸出為空(說 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?明變量無效)

exit ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?退出當(dāng)前子進(jìn)程

export ? temp ? ? ? ? ? ? ?將自定義變量導(dǎo)出為環(huán)境變量 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (臨時(shí)的)

zsh ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?重新建立一個(gè)子進(jìn)程

echo ? $temp ? ? ? ? ? ? ? 查看變量值 ? 結(jié)果輸出 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?zhangsan

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(成為環(huán)境變量后有效)

關(guān)機(jī)之后或者關(guān)閉Shell之后環(huán)境變量便消失

5、按變量的生存周期劃分linux中的變量:

1)永久的:需要修改配置文件螃成,變量永久生效旦签;

2)臨時(shí)的:使用export聲明,關(guān)閉Shell便失效寸宏;

6宁炫、/etc/profile: ?存放環(huán)境變量,對所有用戶永久生效

/etc/bashrc: ? 存放Shell變量

.profile : ? ?存放環(huán)境變量氮凝,只對當(dāng)前用戶永久生效

( .profile是每個(gè)用戶目錄下的隱藏文件羔巢,查看:

? ? ? ? cd ?/home/用戶名

? ? ? ? ls ? ?-a

? ? )

7、添加永久生效環(huán)境變量: ?打開/etc/profile文件 在此文件中添加

8罩阵、命令的查找路徑與循序

1) 環(huán)境變量PATH用于搜索Shell中輸入的命令

2)查看PATH環(huán)境變量的內(nèi)容: echo ?$PATH

9竿秆、添加自定義路徑到"PATH"環(huán)境變量

1) ? PATH里的路徑是以 : 為分割符的

2)命令格式 ?: ?PATH=$PATH:路徑(一定要為絕對路徑)

eg: ? ?PATH=$PATH:/home/shiyanlou/mybin

3)讓添加的自定義路徑自動執(zhí)行

前提:每個(gè)用戶的家目錄都有一個(gè)Shell每次啟動時(shí)會默認(rèn)執(zhí)行一個(gè)配置腳本,用來初始化環(huán)境(包括添加一些用戶自定義環(huán)境變量)

zsh的配置文件: ?. zshrc

Bash的配置文件: ?.bashrc

echo ?"PATH=$PATH:/home/shiyanlou/mybin">> .zshrc: ? 直接添加內(nèi)容到.zshrc

(<<表示將標(biāo)準(zhǔn)輸出以追加的方式重定向到一個(gè)文件中稿壁,而<表示以覆蓋的方式重定向到一個(gè)文件中)

10幽钢、修改和刪除已有變量

1)變量修改

${變量名#匹配字串}:

從頭到后匹配,刪除符合匹配字串的最短數(shù)據(jù)

${變量名##匹配字串}:

從頭到后匹配傅是,刪除符合匹配字串的最長數(shù)據(jù)

${變量名%匹配字串}:

從后到前匹配匪燕,刪除符合匹配字串的最短數(shù)據(jù)

${變量名%%匹配字串}:

從后到前匹配,刪除符合匹配字串的最長數(shù)據(jù)

${變量名/舊的字串/新的字串}:

將符合舊字串的第一個(gè)字串替換為新的字串

${變量名//舊的字串/新的字串}:

將符合舊字串的全部字串替換為新的字串

eg: ?path=$PATH( 將PATH賦給一個(gè)新的自定義變量)

echo $path ? ?(查看path的值)

path=${path%home/shiyanlou/mybin}

2)變量刪除:unset ?變量名

11喧笔、讓環(huán)境變量立即生效:

? ? ? ? ? ? ? source ? ? ? ?配置文件/環(huán)境變量名

source相當(dāng)于 ?" ." : . ? 文件(文件必須指定完整的路徑名)

二帽驯、有關(guān)搜索文件

1、whereis:簡單快速

1)whereis ? -b ? 文件名:只能搜索二進(jìn)制文件

2)whereis ? -m ?文件名:只能搜索man幫助文件

3)whereis ? -s ? ?文件名 :只能搜索源代碼文件

4)whereis ? ?文件名:上述三者都能搜索到

whereis搜索很快溃斋,因?yàn)樗苯訌臄?shù)據(jù)庫中查詢

2界拦、locate 快而全

可以用來查找指定目錄下的不同文件類型

eg:

locate ? ?/etc/sh: ?查找/etc下的所有以sh開頭的文件

(還會自動遞歸/etc的子目錄進(jìn)行查找)

locate ? /usr/share/\*jpg: ?查找文件/usr/share下的所有jpg文件

locate ? ?-c ?/user/share/\*jpg: ?返回文件/usr/share下的所有jpg文件數(shù)目

(上邊的\*jpg中的反斜杠的作用是轉(zhuǎn)義,否則無法找到)

locate ? -i ? ?文件名:忽略文件大小寫進(jìn)行查找

locate通過"/var/lib/mlocate.db"數(shù)據(jù)庫查找梗劫,系統(tǒng)使用定時(shí)任務(wù)每天自動執(zhí)行updatedb命令更新一次,當(dāng)遇見剛添加的文件找不到時(shí)的情況時(shí)截碴,手動執(zhí)行一次updatedb命令梳侨。

3、which 小而精

1)Shell內(nèi)建的一個(gè)命令日丹;

2)可用來確定是否安裝了某個(gè)軟件

3)只從PATH環(huán)境變量指定的路徑中去搜索命令走哺;

4、find ? 精而細(xì)

1)find很強(qiáng)大哲虾,可以通過文件類型丙躏,文件名择示,文件屬性(時(shí)間、權(quán)限)來查找文件

2)find ?文件A ?-name ? ?文件名 :在A文件中找指定文件名的文件晒旅;

(find的第一個(gè)參數(shù)是要搜索的地方)

3)與時(shí)間相關(guān)的命令參數(shù)

-atime ?:最后訪問時(shí)間

-ctime ?:最后修改文件內(nèi)容的時(shí)間

-mtime :最后修改文件屬性的時(shí)間

-mtime ? n:表示n天之前的“一天之內(nèi)“修改過屬性的文件栅盲;

-mtime ? +n :表示在n天之前(不包括第n天本身)被修改過的文件;

-mtime ? ?-n :表示在n天之內(nèi)(包括n天本身)本修改過的文件废恋;

newer ? file ?:file 為一個(gè)已經(jīng)存在的文件谈秫,列出比file還要新的文件名;

eg: ?find ~ ?-mtime 0:當(dāng)天24小時(shí)內(nèi)有改動的文件鱼鼓;

三拟烫、特效 數(shù)字雨

1)sudo ? apt-get ?update; sudo apt-get install ?cmatrix

(安裝cmatrix)

2) 打開xfce終端->單擊編輯-> 首選項(xiàng)->顏色->黑底綠字

(修改終端主題配色)

3)在終端輸入 cmatrix 命令便可


?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市迄本,隨后出現(xiàn)的幾起案子硕淑,更是在濱河造成了極大的恐慌,老刑警劉巖嘉赎,帶你破解...
    沈念sama閱讀 206,968評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件置媳,死亡現(xiàn)場離奇詭異,居然都是意外死亡曹阔,警方通過查閱死者的電腦和手機(jī)半开,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來赃份,“玉大人寂拆,你說我怎么就攤上這事∽ズ” “怎么了纠永?”我有些...
    開封第一講書人閱讀 153,220評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長谒拴。 經(jīng)常有香客問我尝江,道長,這世上最難降的妖魔是什么英上? 我笑而不...
    開封第一講書人閱讀 55,416評論 1 279
  • 正文 為了忘掉前任炭序,我火速辦了婚禮,結(jié)果婚禮上苍日,老公的妹妹穿的比我還像新娘惭聂。我一直安慰自己,他們只是感情好相恃,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,425評論 5 374
  • 文/花漫 我一把揭開白布辜纲。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪耕腾。 梳的紋絲不亂的頭發(fā)上见剩,一...
    開封第一講書人閱讀 49,144評論 1 285
  • 那天,我揣著相機(jī)與錄音扫俺,去河邊找鬼苍苞。 笑死,一個(gè)胖子當(dāng)著我的面吹牛牵舵,可吹牛的內(nèi)容都是我干的柒啤。 我是一名探鬼主播,決...
    沈念sama閱讀 38,432評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼畸颅,長吁一口氣:“原來是場噩夢啊……” “哼担巩!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起没炒,我...
    開封第一講書人閱讀 37,088評論 0 261
  • 序言:老撾萬榮一對情侶失蹤涛癌,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后送火,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體拳话,經(jīng)...
    沈念sama閱讀 43,586評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,028評論 2 325
  • 正文 我和宋清朗相戀三年种吸,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了弃衍。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,137評論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡坚俗,死狀恐怖镜盯,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情猖败,我是刑警寧澤速缆,帶...
    沈念sama閱讀 33,783評論 4 324
  • 正文 年R本政府宣布,位于F島的核電站恩闻,受9級特大地震影響艺糜,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜幢尚,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,343評論 3 307
  • 文/蒙蒙 一破停、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧尉剩,春花似錦辱挥、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至功蜓,卻和暖如春园爷,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背式撼。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評論 1 262
  • 我被黑心中介騙來泰國打工童社, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人著隆。 一個(gè)月前我還...
    沈念sama閱讀 45,595評論 2 355
  • 正文 我出身青樓扰楼,卻偏偏與公主長得像,于是被迫代替她去往敵國和親美浦。 傳聞我的和親對象是個(gè)殘疾皇子弦赖,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,901評論 2 345

推薦閱讀更多精彩內(nèi)容