Esto es lo que anoté de mi conferencia:
- Encuentra el archivo
.bashrc
en tu directorio personal - hacer
vi .bashrc
- Cuando coloque una carpeta de aplicación en algún lugar, asegúrese de que su dirección esté en la variable de ruta.
El problema es que no tengo un .bashrc
archivo en mi directorio de inicio. Solo hay un .bash_history
archivo en mi casa.
Si voy a la raíz, hay un etc/bash.bashrc
archivo allí, pero lo que creo es que hará cambios para todos los usuarios y no solo para mí. Quiero agregar este camino solo para mí. No debería afectar a otros. Además, no hay ninguna $PATH
variable en ese archivo bashrc, por lo que estoy aún más confundido.
~/data/user1/bin
carpeta. He agregado esta ruta al archivo .bashrc. ¿Qué debo hacer para que cuando escriba lego, se inicie el software? ¿Tengo que configurar un alias? Si es así, ¿cómo?alias lego='<What do i put here???>'
~/data/user1/bin
a su variable de entorno PATH en el.bashrc
archivo? (agregue esta línea:)export PATH=$PATH:~/data/user1/bin
- si es así, debería poder simplemente escribirlego
en la terminal, y el programa debería comenzar.PATH=$PATH:~/data/user1/bin
. No mencionaste la exportación, así que no lo puse allí. Lo intentaré mañana cuando vaya a Uni.lego
es la palabra que inicia el software.La mayoría de las distribuciones mantienen un
.bashrc
archivo estándar en el/etc/skel/
que puede copiarlo en su directorio de inicio. De lo contrario, podría crear un nuevo.bashrc
archivo vacío en el directorio de inicio.fuente
Cree su propio archivo de inicio para shells interactivos
Acerca de los archivos de inicio de Bash
De la sección de INVOCACIÓN de
man 1 bash
dice:Tenga en cuenta que estos archivos de inicio son opcionales ; Bash no los requiere. Bash también diferencia entre shells de inicio de sesión y shells interactivos. Un shell interactivo se define así:
Muchas distribuciones obtienen un tipo de archivo de inicio del otro, pero algunas no lo hacen, por lo que este problema puede ser difícil de resolver canónicamente. Debe examinar todos sus archivos de inicio para ver cómo y cuándo
~/.bashrc
se invocará en su sistema.Crear su archivo de inicio de Shell interactivo por usuario
Si simplemente le falta un
~/.bashrc
archivo específico del usuario , simplemente cree uno. Bash lo invocará para shells que no sean de inicio de sesión (p. Ej., Shells iniciados sin la--login
bandera), o cada vez que fuerce la shell para que sea interactiva invocando con la-i
bandera.fuente
Si no tiene un
.bashrc
, simplemente puede crear uno y agregar las líneas que desee, como:para agregar su directorio bin de usuario al final de la ruta.
Pero debe tener cuidado si hay otros archivos de inicio. Las reglas sobre qué archivos se usan son bastante complejas, pero se detallan en la
bash
página del manual. Ingreseman bash
en una línea de comando y busqueINVOCATION
.fuente
Respuestas cortas:
find ~ -maxdepth 1 -name '.bashrc'
vi ~/.bashrc
echo $PATH | grep ~/MyNewCoolProgramFolder
Detallado:
tomo una interpretación literal más cercana.
"Encuentra el archivo .bashrc en tu directorio personal"
Dado que existe el comando
find
, quizás el editor traicionero te sugiera que lo uses:Busque en el directorio de inicio
~
, descienda solo de un nivel (sin subdirección-maxdepth 1
). Para todas las opciones escribeman find
.La línea debajo de la hará el trabajo mínimo
Nota: En caso de
~/.bashrc
que no exista , puede crearlo con un simpleecho >> ~/.bashrc
.El
>>
creará el archivo si no existe. Si en~/.bashrc
cambio existe, agregará solo la salida inofensiva de vacíoecho
, evitando una eliminación involuntaria de un archivo tan crítico, que es incidentalmente difícil de restaurar sin una copia de seguridad.(Lo siguiente se debe a que rara vez tengo que honrar el significado de mi apodo, no lo ejecute si tiene dudas).
"Hacer
vi .bashrc
" ¡Ahora puedes hacerlo
vi ~/.bashrc
, la trampa aquí es que debes presionar:yqsalir!Carpeta de la aplicación y
$PATH
Cuando crea una carpeta de la aplicación, por ejemplo
~/MyNewCoolProgramFolder
, la línea siguiente solo verificará si está en$PATH
:No necesita agregar si ya está allí. Si es necesario, puede agregar al
$PATH
cony para agregar esa línea
~/.bashrc
si desea que sea permanente."4?!? ¿Cómo 4 si hubiera solo 3 puntos?" - Soluciones.
Hay algunas soluciones para este último; supongamos que
CoolDetraveller
existeun archivo ejecutable llamadosolo en su nueva carpeta de aplicación:(a) Puedes intentar ejecutarlo. Simplemente no comenzará si no está en el
$PATH
.(b) Puede probar su autocompletado . Comienza a escribir
CoolDetravelle
y presiona Tab. Si está en el$PATH
, se completará automáticamente (siempre si la finalización automática está habilitada).(c) Puede pedir que
which
se use el comando bash shell si escribe el comandoCoolDetraveller
.Nota: Si en su ruta de la aplicación que hay uno o más espacios,
which
podría ser incapaz de encontrarCoolDetraveller
, aunque (aquí me honro mi seudónimo de nuevo) la finalización automática deCoolDetraveller
un parámetro válido delwhich
comando funcionará!Ad nauseam : no puedes preguntar
whereis CoolDetraveller
porquewhereis
fuente