偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Linux Bash Shell絕對(duì)路徑與相對(duì)路徑

運(yùn)維 系統(tǒng)運(yùn)維
在使用 bash 還有另一個(gè)困擾,就是當(dāng)你的 PATH 沒有設(shè)定完整的時(shí)候,下達(dá)指令都是要以『一長列的指令連帶根目錄都要列出來』,呵呵那就是絕對(duì)路徑的設(shè)定法啦!

其實(shí),在使用 Linux Bash Shell還有另一個(gè)困擾,就是當(dāng)你的 PATH 沒有設(shè)定完整的時(shí)候,下達(dá)指令都是要以『一長列的指令連帶根目錄都要列出來』,呵呵那就是絕對(duì)路徑的設(shè)定法啦!基本上,這個(gè)『絕對(duì)路徑』與『相對(duì)路徑』的觀念是很重要的!否則你將常常會(huì)找不到檔案說!

所謂的『絕對(duì)路徑』就是以根目錄開始寫入到檔案的一種命令寫定方法,舉例來說,我目前在 /home/test 這個(gè) test 使用者的家目錄中,我想要看看里面的 .bashrc 這個(gè)檔案的資料,使用的是 more 這個(gè)指令,而這個(gè)指令在 /bin/more 當(dāng)中,則正確的下達(dá)指令的方法為:
[test @tset test]# /bin/more .bashrc <==我在的目錄為 /home/test !這是絕對(duì)路徑寫法!
而如果你還記得我們在 檔案系統(tǒng)指令 那一篇文章中提到的觀念的話,那么應(yīng)該記得使用 ls -al 時(shí)會(huì)出現(xiàn)兩個(gè)一定存在的目錄,分別是『.』與『..』,分別代表是『這個(gè)路徑』,與『上一層路徑』!
[test @tset test]# ls -al
total 728
drwx------3 vbirdvbird4096 May 19 14:53 . <==這一層路徑的屬性說明
drwxr-xr-x3 root root 4096 May 5 16:50 .. <==上一層路徑的屬性說明
以下略!

所以說,要執(zhí)行上一層目錄中的命令,可以下達(dá)『 cd ../command 』那個(gè) command 指的是存在的可執(zhí)行檔!那么我因?yàn)樵?/home/test 里面,距離 /bin 有兩層上層目錄,所以我要使用 /bin/more 這個(gè)執(zhí)行檔,并且使用相對(duì)路徑的方法,就必須使用:
[test @tset test]# ../../bin/more .bashrc<==一層一層回到根目錄,在進(jìn)入 /bin 的寫法!相對(duì)路徑
這種相對(duì)路徑的方法相當(dāng)廣泛的被運(yùn)用于 script 當(dāng)中,這是因?yàn)槿缜懊嫣岬降?,每個(gè)人的安裝預(yù)設(shè)的目錄都不相同,則使用相對(duì)路徑的話,很容易就可以找到套件之間相依軟體或者是設(shè)定檔案的相關(guān)性!
 
關(guān)于Linux Bash Shell路徑搜尋的問題!為何不執(zhí)行目前所在目錄下的檔案?咦!剛剛不是提到『.』與『..』嗎?那么那個(gè)『 . 』是干嘛用的?!眼尖的朋友應(yīng)該已經(jīng)發(fā)現(xiàn)了,就是『我在執(zhí)行檔案的時(shí)候,基本上,并不會(huì)主動(dòng)搜尋目前目錄下的檔案』舉個(gè)例子來說,我安裝的 squid 這個(gè)執(zhí)行檔在 /usr/local/squid/bin/squid 這個(gè)檔案,然而我在 /usr/local/squid/bin 下達(dá) squid 的時(shí)候,系統(tǒng)會(huì)告訴你『查不到這個(gè)檔案!』真是見鬼了!明明有這個(gè)檔案的呀!這是因?yàn)橄到y(tǒng)預(yù)設(shè)的 PATH (路徑)并沒有執(zhí)行目前目錄下的設(shè)定,也就是『.』這個(gè)路徑!你可以使用『 echo $PATH 』看看,就可以知道為什么了!那么為何不要設(shè)定這個(gè)路徑呢?這是因?yàn)椤喊踩坏目剂俊?/p>

由于系統(tǒng)預(yù)設(shè)是允許任何人在 /tmp 底下寫入任何檔案的,那么萬一有居心不良的使用者或者是 Cracker 入侵你的電腦,并在你的 /tmp 里頭埋了一個(gè)小木馬,并取名為 ls ,好了,改天你以 root 身份登入后,到 /tmp 底下,并執(zhí)行 ls ,你看會(huì)有什么結(jié)果?!這個(gè) /tmp/ls 由其他身份的人來執(zhí)行或許沒有問題,但是由 root 來執(zhí)行卻可能會(huì)導(dǎo)致 Cracker 所樂意見到的結(jié)果!那曉得為何了吧?!當(dāng)然啰!您還是可以選擇在 ~/.bashrc 當(dāng)中設(shè)定你的 . 在你的 PATH 當(dāng)中,不過并不這么建議就是了!

好了,由于系統(tǒng)預(yù)設(shè)并不主動(dòng)搜尋目前目錄下的執(zhí)行檔,那么你應(yīng)該如何執(zhí)行『目前目錄下的執(zhí)行檔』呢?很簡單呀!就是以相對(duì)路徑的觀念,由于『 .. 』是上層,而『 . 』是這一層,所以要執(zhí)行這一層目錄的命令就使用『 ./command 』即可!例如你的 /usr/local/squid/bin 底下執(zhí)行 squid 則可以寫成:
[test @tset bin]# ./squid  <==以相對(duì)路徑的觀念來看!在本目錄下達(dá)的指令寫法!
請(qǐng)?zhí)貏e留意這方面的問題!『新手特別容易犯這個(gè)錯(cuò)誤呢!』

【編輯推薦】

  1. Linux Bash命令關(guān)于程序調(diào)試詳解 
  2. Linux Bash命令關(guān)于快捷鍵應(yīng)用
  3. Linux Bash Shell系統(tǒng)的應(yīng)用詳解
  4. Linux Bash具體安裝步驟及使用介紹
  5. Linux Bash命令查詢相關(guān)事件詳解
     
責(zé)任編輯:chenqingxiang 來源: Linux社區(qū)
相關(guān)推薦

2011-07-11 13:29:03

JAVA

2011-06-23 15:33:24

SEO

2010-03-18 08:48:30

Python入門

2009-08-06 18:31:57

C#相對(duì)路徑絕對(duì)路徑

2022-11-16 10:13:29

Linux相對(duì)路徑絕對(duì)路徑

2022-08-29 14:11:10

Linux絕對(duì)路徑相對(duì)路徑

2022-11-04 10:49:56

Linux文件

2021-07-29 20:28:24

靜態(tài)代碼Hdfs

2021-08-04 10:15:14

Go路徑語言

2014-11-10 11:49:01

QCMSQCMS漏洞安全漏洞

2009-08-07 13:38:18

C#文件相對(duì)路徑

2009-08-07 13:24:35

C#獲取相對(duì)路徑

2022-04-24 15:33:38

鴻蒙開發(fā)操作系統(tǒng)

2023-10-22 08:39:13

Linux目錄切換

2009-08-07 13:16:27

c#相對(duì)路徑寫法

2015-03-30 15:45:41

javascripta標(biāo)簽絕對(duì)路徑方法

2019-08-30 09:54:39

LinuxC語言文本編輯器

2009-08-27 10:40:56

Java路徑

2022-08-26 13:56:30

模塊JavaScript

2009-08-06 18:03:21

C#相對(duì)路徑
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)