Contexto: estoy tratando de hacer que una aplicación se inicie automáticamente cuando inicio sesión. Para esto necesito seleccionar el path
para la aplicación.
Aquí están los caminos que ya miré:
/sbin
/usr/sbin
/usr/local/bin
/usr/share/
Si esto puede ayudar, la aplicación que estoy tratando de encontrar se llama " ScreenCloud " y la descargué del Centro de software de Ubuntu.
Pero no puedo encontrarlo, ¿hay alguna forma de saber dónde está instalado un software en particular? Porque incluso si encontrara para este, me gustaría evitar tener el mismo problema en el futuro.
18.04
software-installation
software-sources
paths
startup-applications
Sección de la economía
fuente
fuente
.deb
paquete, pero debe agregar PPA.screencloud.sh
ascreencloud
y sospechaba que se había eliminado/opt
. Esa parte de mi respuesta fue señalar cómotype
ywhich
no encontraríascreencloud
pero lolocate
haría.screencloud.sh
en realidad todavía existe, pero no estoy seguro de cómo difiere descreencloud
otra cosa que no sea el hecho de que el.sh
archivo es un script yscreencloud
no lo es. Realmente no estoy familiarizado con esta aplicación. Debajo/usr/bin/
hay unscreencloud
, unscreencloud.sh
, y también unscreencloud-
seguido por el número de versión, más o menos comogimp
es.Respuestas:
Encuentra la ruta de un ejecutable
Mejor manera
type executable
Consulte esta pregunta para obtener más información sobre cómo
type
es mejor. (Gracias, comentarios!)Otras maneras
whereis executable
which executable
Esos comandos solo buscan en la variable PATH (
echo $PATH
), por lo que no son válidos en algunos casos (funciones incorporadas, alias o funciones bash, y más).fuente
type
se prefiere,which
ya que es un shell incorporado y puede determinar si un comando es un alias. ¡Eso también era nuevo para mí!type
se prefiere: ¿Por qué no usar "which"? ¿Qué usar entonces?which
hecho es útil en el contexto específico de los scripts de shell. Fuera de ese contexto, sin embargo,type
casi siempre es la mejor opción.Encuentra la ubicación del comando dentro o fuera de la ruta
Suponga que desea encontrar la ubicación de
uname
un programa que enumera la información del sistema. Si desea saber en qué directorio está almacenado el comando de nivel superior, tiene varias opciones:Localizar ventajas
La última opción
locate
devuelve todos los archivos que contienenuname
no solo el programa que se ejecuta desde el símbolo del sistema.La ventaja
locate
es que encontrará comandos que no están en su ruta de búsqueda.type -a
(preferido sobre simpletype
) ywhich
solo encontrará comandos en su ruta de búsqueda. Para ver su ruta de búsqueda useecho $PATH
.Tome por ejemplo esta respuesta en ¿Cómo iniciar screencloud? :
El
locate screencloud
comando encontrar, perowhich screencloud
ytype -a screencloud
no lo hará porque:screencloud.sh
y solo ellocate
comando busca en la coincidencia parcial./opt/screencloud
probablemente no está en la ruta de búsqueda.which
ytype
solo busca archivos ejecutables en la ruta de búsqueda.Nota: esta es una respuesta anterior. Se llama a ScreenCloud moderno con
screencloud
.La ventaja de Locate sobre el
find
comando es que puede ser cientos o incluso miles de veces más rápido. También ejecutar afind
partir de/
dará muchos errores de permisos con los que no experimentarálocate
.Localizar desventajas
Si acaba de instalar el programa hoy, deberá usarlo
sudo updatedb
para actualizar la base de datos de localizar.fuente
Use el siguiente comando para enumerar todos sus
$PATH
directorios:Use el siguiente comando para encontrar la ruta completa para
screencloud
:Si usó
apt
,apt-get
o el Centro de software de Ubuntu para instalar el paquete, puede usar el siguiente comando para encontrar la ruta completa:Suponiendo que use este repositorio , debe ser capaz de encontrar
screencloud
en/usr/bin/
.El camino completo es:
o
Sin embargo, si utilizó la tienda de Snapcraft de acuerdo con el enlace que proporcionó en su pregunta, la ruta estaría en el siguiente directorio:
más información
Además, recuerde que Ubuntu distingue entre mayúsculas y minúsculas, por lo que debe utilizar todo en minúsculas sin mayúsculas.
fuente
/snap/bin
!