Powiedzmy, że mam dowiązanie symboliczne pliku w moim katalogu domowym do innego pliku na innej partycji. Jak znaleźć docelową lokalizację połączonego pliku? Przez to, mam na myśli, powiedzmy, że mam file2
w /home/user/
; ale jest to symboliczny link do innego file1
. Jak mam znaleźć file1
bez konieczności ręcznego przeglądania poszczególnych partycji / katalogów w celu znalezienia pliku?
20
file1
jest dowiązaniem symbolicznymfile0
? Czy chcesz znaleźć ostatni cel swojego dowiązania symbolicznego (file0
) czy tylko następny (file1
)?Odpowiedzi:
Spróbuj tego :
(ostatni cel twojego dowiązania symbolicznego, jeśli istnieje więcej niż jeden poziom)
Jeśli chcesz tylko następnego poziomu dowiązania symbolicznego, użyj:
źródło
user@shell a5$ readlink -f ./student1.java
i dostajęuser@shell a5$
readlink /path/file
zwróci następny cel.1.
produkować
2)
produkować
3)
produkować
źródło
Najprostszy sposób:
cd
do miejsca, w którym znajduje się dowiązanie symboliczne i wykonaj,ls -l
aby wyświetlić szczegóły plików.Część po prawej stronie
->
po dowiązaniu symbolicznym jest miejscem docelowym, na które wskazuje.Dawny:
Mamy tutaj „Link do temp.txt”, który wskazuje na (
->
) „/home/user/temp.txt”.Ale, jak wskazuje @Gilles Quenot , możesz to zrobić
readlink -f /path/to/symbolic_link
źródło
Rozszerzanie na Costas
Załóżmy, że masz
W skrypcie możesz to zrobić (użyj backsticksa)
Więc masz
źródło
Inną metodą (na którą wcześniej nie udzielono odpowiedzi) w celu znalezienia plików linków jest użycie poniższego polecenia,
Polecenie :
Wyjście :
/ home / prateek / Music: symboliczny link do / media / prateek / HD-E1 / Music
źródło