Où puis-je trouver les exécutables de l'application dans le système de fichiers?

35

Où sont les exécutables pour les programmes stockés dans Ubuntu?

Une application (Komodo Edit) me demande d'identifier une application à utiliser comme navigateur Web. Je me suis habitué à entrer simplement le nom de l'application en tant que commande pour de telles situations, mais ce scénario m'a fait réfléchir.

Je sais que dans Windows, il s’agirait simplement du dossier d’application correspondant dans le dossier «Program Files», mais je suppose que les choses sont un peu différentes sous Linux?

Je pensais que quelque part binserait logique mais cela apparaît aux applications standard Linux / Unix. Où pourrais-je trouver l'exécutable binaire pour les applications stockées sur mon système?

Richzilla
la source

Réponses:

43

La solution complète consiste à consulter la documentation relative à la hiérarchie des systèmes de fichiers pour savoir où et où aller.

Mais dans votre cas, si vous voulez savoir où se trouve un exécutable particulier (par exemple Firefox), utilisez

which firefox

Et vous obtiendrez le chemin complet comme ça

/usr/bin/firefox
Richard Holloway
la source
2
Filesystem Hierachy Standard... intéressant ... je ne le passerai pas avec un peigne fin, mais c'est vraiment bon de le savoir ... Cela m'a permis de mieux comprendre Linux
Peter.O
11

Les applications installées via le gestionnaire de paquets vont généralement à /usr/bin. Les applications que vous vous compilez vont à /usr/local/bin/moins que vous ne définissiez explicitement un préfixe différent lors de la compilation.

Vous pouvez savoir où réside une application spécifique en tapant which application_namedans le terminal. Par exemple which firefox, vous imprimerez /usr/bin/firefox(si vous utilisez Firefox à partir des paquets Ubuntu).

sepp2k
la source
6

Une bonne commande CLI pour ce genre de questions est:

whereis <nameofwhatever>

ou bien sûr qui (voir ci-dessous)

Takkat
la source
4
Cela permettra de trouver les fichiers nommés <nomdefaisle> qui peuvent ou non être des exécutables. Certains peuvent même être des répertoires. Vous devriez utiliser lequel à la place de whereis.
Richard Holloway
ACK complet pour les installations standard (que nous avons tous, espérons-le).
Takkat
1

Vous pouvez également essayer ceci si vous recherchez l'exécutable à partir d'un nom de package:

dpkg -L firefox

Cela listera tous les fichiers appartenant à Firefox. Pour obtenir les exécutables, passez-le à un traitement ultérieur

dpkg -L firefox | while IFS=$'\n' read -r line; do
    [[ -x "${line#*:}" ]] && echo "$line"
done
kiri
la source