link (ln) 的路徑問題 - Linux

Table of Contents

各位大大好
最近剛接觸linux,所以主要都是觀察、修改別人的東西來學習
在發此文之前
我有大略翻過網路資料以及用"ln"還有"link"在板上搜尋,但依然沒找到解答
所以才寫了這篇文章,如果有任何不妥,請務必告知,小的會刪文道歉

就ln這指令,我知道的很單純,參數可用f與s
如今我在接觸一隻程式,該程式在etc/目錄下有個a文件(是程式需要的設定檔)
但是該程式的MAKE FILE另開了目錄etc2/,並且在etc2裡有個b檔要連結到a文件
並且程式中存取都是etc2/b檔(etc2跟etc都一樣平起平坐在根目錄)

簡單來說如果在根目錄輸入"ls",可以看到
etc/
etc2/
而進一步探討各自內容則是
etc/a
etc2/b->etc/a

看到這裡我發現了問題所在
因為我按他MAKE FILE弄出來的配置
b根本找不到真正的etc/a
因為"etc2/b->etc/a"這個路徑的意義是,b指向etc2/etc/a
如果我想讓b真的去讀到a,應該要寫b->../etc/a

但那個MAKE FILE或程式,已經擁有實際運作的過去
所以我想請問,是不是我哪裡搞錯了?
是否有什麼方式可以達到ln時,可以指定出絕對的路徑而非相對的路徑?
也代表b指的就是根目錄的etc/a
不論b被移到那裡,都無所謂,他永遠就是指到根目路的etc/a
(就不必考慮b與a之間的相對位置了)
有這辦法嗎?

謝謝各位

--
有種熟悉總在你心裡深處、眼光餘角出現
越是追求越是千里尋不著
日覆一日,漸漸的也就淡忘
實際卻如影隨行、無聲無息的埋藏在潛意識裡‧‧‧
也許夜深人靜時又會不經意的輕敲你心房

--

All Comments

Sarah avatarSarah2012-06-04
ln -s /etc/a 你要連結到的地方
你連結時把絕對路徑打上去即可
Faithe avatarFaithe2012-06-08
你 mkdir etc2, 怎麼又跑個 etc_ro 出來?
Genevieve avatarGenevieve2012-06-09
就 cd /etc2 ; ln -s /etc/a b 就好
Rae avatarRae2012-06-13
你沒加 /,就會等效變成 ln -s ./etc/a b 而你 /etc2目錄
並沒有 etc目錄,更沒有其下的etc/a
Cara avatarCara2012-06-15
^當中 (漏字)
David avatarDavid2012-06-16
可以找一下「絕對路徑」與「相對路徑」的資料
Ina avatarIna2012-06-17
我猜他的script的工作目錄是/, 所以不用加/