alias de línea de comando versus alias .bash_profile

alias de línea de comando versus alias .bash_profile

cuando creo este alias desde la línea de comando, todo funciona bien alias eyecta='for I in 1 2 3; hacer /usr/sbin/diskutil unmountDisk disk$I;hecho'

Cuando se crea el mismo alias en .bash_profile. el sistema operativo deja caer "$I"

Esta es una pregunta para novatos, pero me da vergüenza decir que no puedo encontrar la solución. ¿Tengo que crear un script y que el alias haga referencia a él?

Respuesta1

Lo que estás intentando debería funcionar. Probablemente $Ise esté evaluando cuando se define su alias. Lo que probablemente significa que le faltan algunas citas en alguna parte.

Sin embargo, sin incluir la parte relevante de su .bash_profile es difícil decirlo.

Respuesta2

En su pregunta, rodea el alias entre comillas simples, que es la forma correcta de hacerlo para retrasar la evaluación de la variable. Supongo que estás usando comillas dobles, .bash_profilelo que permite que la variable se evalúe inmediatamente. Dado que es probable que la variable no esté configurada en ese punto, se evalúa como una cadena nula.

información relacionada