Pasar configuraciones de entorno adicionales opcionales al shell en el momento de inicio de Konsole

0

Tengo un montón de "sombreros" diferentes en mi computadora, incluidos varios proyectos sobre la marcha (por ejemplo, $ work, algunos proyectos en github, algunos en Sourceforge, algunos en los que estoy involucrado, algunos que simplemente sigo, etc. .). Cada uno tiene su propio directorio pseudo-home (por ejemplo, ~ / hat / $ projectname). Algunos tienen su propia configuración de entorno específica (p. Ej., Entorno de instancia de DB2).

Entonces, tengo una herramienta de shell para cambiar de uno a otro ("hat $ projectname"). Encuentra el directorio de inicio correcto, cd's ("hat" es un alias para ". Hat.sh" para que pueda hacer esto), configura el entorno, etc. Porque soy vago.

Ahora quiero ser un poco más vago. Me gustaría configurar una tecla de acceso rápido para iniciar konsole con los parámetros correctos para el sombrero que más uso: $ work. Me gustaría escribir correctamente "hat work" en la ventana. Pero no estoy del todo seguro de cómo pasar esto a través de konsole para golpear a mi .profile (?) Y dejar el shell funcionando después. Todo mientras no hago nada de esto para la tecla de acceso rápido que ya tengo que lanza konsole normalmente.

Tanktalus
fuente

Respuestas:

2

Konsole y el shell que ejecuta heredarán las variables de entorno establecidas cuando se ejecute Konsole. El siguiente comando (que puede poner en un script y asignar una tecla de acceso rápido) dará como resultado que la FOOvariable se establezca en el shell:

$ FOO=bar konsole

La otra opción es crear diferentes scripts de inicio para su shell (supongo que bash a continuación) y modificar el comando que ejecuta Konsole:

$ konsole -e "bash --rcfile ~/.bashrc-$projectname"
mgorven
fuente
Si bien parece que el primero funciona, cuando lo coloca en las teclas de acceso rápido personalizadas para KDE, no funciona (no lo ejecuta el shell). El segundo es molesto porque tengo que tener un archivo .bashrc adicional para cada proyecto para el que quiero crear una tecla de acceso rápido, aunque no veo una opción significativamente mejor, gracias.
Tanktalus
Podrías intentar usarlo sh -c "FOO=bar konsole"como acción de tecla de acceso rápido.
mgorven
0

Lo que terminé haciendo es crear un nuevo perfil para Konsole, "Trabajo". Y lo configuré para que se ejecute igual que lo normal, pero puede establecer variables de entorno específicas, así que le dije que establezca HAT_PROJECT = work como una variable de entorno adicional. Luego, en la parte inferior de mi .bashrc, simplemente ejecuto " . hat.sh $HAT_PROJECT" si está configurado, y también lo desarmo para que no sobreviva.

Esto no es significativamente diferente de la segunda opción de mgorvan, ya que termina creando un montón de cruft extra que esperaba evitar.

Gracias a #kde en IRC por qué la primera opción no funcionó.

Tanktalus
fuente