回答:
これを試して :
readlink -f /path/file
(複数のレベルがある場合、シンボリックリンクの最後のターゲット)
次のレベルのシンボリックリンクが必要な場合は、次を使用します。
readlink /path/file
user@shell a5$ readlink -f ./student1.java
と私は取得user@shell a5$
readlink /path/file
は次のターゲットを返します。
最も簡単な方法:cd
シンボリックリンクがある場所に移動しls -l
、ファイルの詳細を一覧表示します。
->
シンボリックリンクの後の右側の部分は、それが指している宛先です。
例:
lrwxrwxrwx 1 userName groupName 22 Jan 17 13:29 temp.txtへのリンク-> /home/user/temp.txt
ここには、->
「/home/user/ temp.txt」を指す「temp.txtへのリンク」があります。
しかし、@ Gilles Quenotが指摘しているように、次のこともできます。readlink -f /path/to/symbolic_link
コスタスの拡大
あなたが持っていると仮定します
ln -s test.txt sym_link_1.txt
ls -l sym_link_1.txt
lrwxrwxrwx. 1 a1 g1 8 Jan 7 16:59 sym_link_1.txt -> test.txt
スクリプトでできること(バッククォートを使用)
ln -s `readlink sym_link_1.txt` sym_link_2.txt
その後、あなたは持っています
ls -l sym_link_*.txt
lrwxrwxrwx. 1 a1 g1 8 Jan 7 16:59 sym_link_1.txt -> test.txt
lrwxrwxrwx. 1 a1 g1 8 Jan 7 17:01 sym_link_2.txt -> test.txt
file1
へのシンボリックリンクはどうなりfile0
ますか?シンボリックリンクの最後のターゲット(file0
)または次のターゲット()を検索しますfile1
か?