tipos tiene que programacion lenguaje ejemplos comandos unix zsh gnu-screen

unix - tiene - shell programacion



Cargando zsh como shell predeterminado en la pantalla gnu (3)

Primero ubica dónde está zsh así:

$ whereis zsh

Segundo cambio de shell para el usuario actual:

$ chsh -s /path/to/zsh joel

Y zsh será el shell predeterminado para el usuario joel después de volver a iniciar sesión.

Estoy usando KUbuntu 10.04 (Lucid Lynx). He instalado zsh y pantalla. He establecido zsh como el shell predeterminado, configurando Comando en zsh en Configuración-> Editar perfil actual del terminal. Pero, cuando lanzo la pantalla, se carga el shell bash. Si ejecuto el comando zsh, entonces se inicia zsh pero se muestra el siguiente mensaje:

"/home/joel/.zshrc:36: Can''t add module parameter `mapfile'': parameter already exists"

Además, se invoca zsh solo para la instancia de pantalla actual y tengo que invocarla manualmente de nuevo para otras instancias. Entonces, ¿hay alguna forma de hacer que la pantalla cargue zsh de forma predeterminada e invocarla automáticamente para cada instancia?

Gracias


Si desea que sea el shell predeterminado solo para sesiones de pantalla, simplemente puede agregar esta línea a su archivo ~/.screenrc .

shell "/usr/bin/zsh"


Tuve un problema similar a ti, excepto que en mi caso cambié los usos de shell vim, especificando set shell=zsh/ --login en .vimrc. Cada vez que caía en una cáscara a través de: sh zsh lloriquearía con el mismo error:

Can''t add module parameter `mapfile'': parameter already exists

Pregunté en #vim y #zsh en freenode. Resulta que si ejecuta zsh nuevamente dentro de una sesión zsh, verá el mismo error, y la solución sugerida es simplemente agregar &>/dev/null a su archivo .zshrc así:

zmodload -ap zsh/mapfile mapfile &>/dev/null

El módulo zsh mapfile crea una pseudo-variable que asigna nombres de archivos a su contenido, y solo es necesario si tiene scripts que realmente usan $ mapfile.

Parece ser opcional, pero se señaló que el parámetro de carga automática está ahí, por lo que solo se carga cuando es necesario, por lo que no debería haber ningún daño al mantener las quejas de la línea y la tubería a / dev / null