Como encontrar o symlink de um programa [closed]

4

Ao executar firefox , /usr/bin/firefox , sei que ele está simbolicamente vinculado a outro programa, mas não sei como encontrar o symlink desse programa. Qualquer ajuda?

    
por heemayl 22.07.2016 / 18:49

3 respostas

11

A maneira canônica de resolver links simbólicos é usar readlink .

Para resolver o link simbólico /usr/bin/firefox :

readlink /usr/bin/firefox

Canonização seguindo todos os links simbólicos entre eles:

readlink -f /usr/bin/firefox

Por exemplo:

$ readlink /usr/bin/firefox
../lib/firefox/firefox.sh

$ readlink -f /usr/bin/firefox
/usr/lib/firefox/firefox.sh

Observe que, para qualquer arquivo que não seja um link simbólico, ele será resolvido para si mesmo:

$ readlink -f /bin/cat 
/bin/cat
    
por heemayl 22.07.2016 / 19:10
4

Tente isto:

ls -la /usr/bin/firefox

Isso é fácil, você pode usar ls -la em qualquer lugar e também pode trabalhar em vários arquivos / pastas.

    
por Techjail 22.07.2016 / 18:52
4

Tente:

$ file /usr/bin/firefox

O que lhe dirá (entre outras informações) se é um link simbólico ou não; se sim, para qual arquivo.

Por exemplo:

$ file ~/test.txt
/home/bharadwaj/test.txt: ASCII text

$ file /usr/bin/firefox
/usr/bin/firefox: symbolic link to ../lib/firefox/firefox.sh

(Observe que .. significa "diretório pai", por exemplo, /usr/lib/firefox/firefox.sh )

Para extrair apenas o diretório:

$ readlink -e /usr/bin/firefox
/usr/lib/firefox/firefox.sh
    
por UniversallyUniqueID 22.07.2016 / 19:02