這一個問題,在這一個的癒合:Symlinks not working when link is made in another directory?是否可以從腳本創建相對符號鏈接?
說我有一個包含項目的目錄,並創建從項目目錄到另一部分的一個部分符號鏈接的腳本。這些符號鏈接可能是相對的(不是絕對的),即使腳本的位置完全在其他地方嗎?
我對這樣做感興趣,以便項目目錄可以移動而不會破壞其中的絕對鏈接。
這一個問題,在這一個的癒合:Symlinks not working when link is made in another directory?是否可以從腳本創建相對符號鏈接?
說我有一個包含項目的目錄,並創建從項目目錄到另一部分的一個部分符號鏈接的腳本。這些符號鏈接可能是相對的(不是絕對的),即使腳本的位置完全在其他地方嗎?
我對這樣做感興趣,以便項目目錄可以移動而不會破壞其中的絕對鏈接。
從腳本運行命令沒有什麼特別之處。你只是這樣做。
$ mkdir originals
$ echo "weird" > originals/original.txt
$ mkdir copies
$ ln -s ../originals/original.txt copies/copy.txt
$ cat copies/copy.txt
weird
請注意,您不必在創建相對鏈接之前更改工作目錄。符號鏈接將相對於鏈接,而不是相對於當前目錄。
編輯:
@MДΓΓБДLL正確地指出,你想要做的是內置的ln
功能。 ln
的第一個參數將是鏈接創建時使用的目標值,無論它在哪裏創建。例如:
$ cd/
$ ln -s .. ~/testln
$ cd ~
$ ls -la testln
lrwxrwxrwx 1 xxxxx xxxxx 2 Dec 22 09:29 testln -> ..
@MДΓΓБДLL:OP不問如何創建相對鏈接,他問如何在另一個目錄中創建相對鏈接。有一個區別。 – 2011-12-22 14:07:54
沒有區別。 – hop 2011-12-22 14:15:30
@ user112358132134和區別是...? – 2011-12-22 14:21:12