Korn Shell Settings (actualizado para ksh93)
2008-08-18 10:44:31-05
Hacks
La versión corregida y aumentada, lista para ser usada con el pkgsrc de NetBSD e incluso con GNU/Linux ya que es la misma versión del Korn Shell: el ksh93.
Esto va en ~/.profile:
# Load the shell settings
case $SHELL in
*bash*) # GNU Bourne Shell
. $HOME/.bashrc
;;
*ksh*) # Korn Shell Settings
export ENV=$HOME/.kshrc
;;
esac
# Display the fortune cookie
fortune -a
case $SHELL in
*bash*) # GNU Bourne Shell
. $HOME/.bashrc
;;
*ksh*) # Korn Shell Settings
export ENV=$HOME/.kshrc
;;
esac
# Display the fortune cookie
fortune -a
y esto en ~/.kshrc:
#~/.kshrc: Korn Shell Settings
# Enviroment vars
export EDITOR=vi
export FCEDIT=$EDITOR
export HISTEDIT=$EDITOR
export VISUAL=$EDITOR
# Each Korn Shell variant has its own history file
export HISTFILE=$HOME/.$(basename $SHELL)_history
# Locale settings
if [ $USER != "root" ]; then
export LANG=en_US.ISO8859-1
export LC_ALL=${LANG}
fi
# Set the editor command line style
set -o vi
# Notify about background processes
set -o notify
# Set the ls tyle
if [ $USER != "root" ]; then
alias ls='ls -FA'
fi
# Set the prompt
case $KSH_VERSION in
*MIRBSD*) # MirBSD Korn Shell
PS1='[${USER:=$(id -un)}'"@${HOSTNAME:=$(hostname -s)}:!]"
;;
*) # All the rest variants
PS1='
$(whoami)@$(hostname)
$(date)
$(pwd)
[$(tty):!]'
;;
esac
PS1=$PS1'$(if (( $(id -u) )); then print \$; else print \#; fi) '
# Enviroment vars
export EDITOR=vi
export FCEDIT=$EDITOR
export HISTEDIT=$EDITOR
export VISUAL=$EDITOR
# Each Korn Shell variant has its own history file
export HISTFILE=$HOME/.$(basename $SHELL)_history
# Locale settings
if [ $USER != "root" ]; then
export LANG=en_US.ISO8859-1
export LC_ALL=${LANG}
fi
# Set the editor command line style
set -o vi
# Notify about background processes
set -o notify
# Set the ls tyle
if [ $USER != "root" ]; then
alias ls='ls -FA'
fi
# Set the prompt
case $KSH_VERSION in
*MIRBSD*) # MirBSD Korn Shell
PS1='[${USER:=$(id -un)}'"@${HOSTNAME:=$(hostname -s)}:!]"
;;
*) # All the rest variants
PS1='
$(whoami)@$(hostname)
$(date)
$(pwd)
[$(tty):!]'
;;
esac
PS1=$PS1'$(if (( $(id -u) )); then print \$; else print \#; fi) '
Permalink: http://www.mononeurona.org/users/entry/asarch/1508
Comentblogs:1.-
Pelon de Jarras wrote:
Que ventajas tiene el kornshell vs. el bourn again shell ?
2008-08-18 19:15:42-05
Que ventajas tiene el kornshell vs. el bourn again shell ?
2008-08-18 19:15:42-05
2.-
asarch wrote:
El Bash incluye la sustitución del historial:
100 man -w bash
101 groff -mandoc -rD1 -Tdvi `man -w bash` > bash.dvi
Y podrias teclear:
$ !101:s/bash/ksh/g
Para obtener el formato independiente de dispositivo del manual del Korn Shell.
2008-08-19 20:12:28-05
El Bash incluye la sustitución del historial:
100 man -w bash
101 groff -mandoc -rD1 -Tdvi `man -w bash` > bash.dvi
Y podrias teclear:
$ !101:s/bash/ksh/g
Para obtener el formato independiente de dispositivo del manual del Korn Shell.
2008-08-19 20:12:28-05
3.-
asarch wrote:
Esta sustitucion del historial solamente lo puedes encontrar en el C Shell (csh) o en el Tenet C Shell (tcsh, el shell por default de la gente de FreeBSD).
2008-08-19 20:13:12-05
Esta sustitucion del historial solamente lo puedes encontrar en el C Shell (csh) o en el Tenet C Shell (tcsh, el shell por default de la gente de FreeBSD).
2008-08-19 20:13:12-05
4.-
asarch wrote:
Hay muchas variantes del Korn Shell, pero se pueden resumir en las siguientes:
* pdksh (Public Domain Korn Shell).
Originalmente el Korn Shell era de codigo cerrado como lo es Windows, esto hizo que la gente hiciera este clon tal como paso con el editor vi. Es el cual esta basado el ksh por default de la gente de BSD (NetBSD y OpenBSD solamente).
* ksh93.
La version oficial del Korn Shell de AT&T, ahora ya es de codigo abierto, sin embargo, como durante mucho tiempo permanecio cerrado esto hizo que la gente del pdksh le comiera el mandado en algunas cosas como al momento de completar los nombres de los archivos, el algoritmo del pdksh es mejor que del ksh93, lo mismo pasa en la edicion de la linea de entrada al estilo del editor vi, es mucho mejor en pdksh.
* mksh (MirBSD Korn Shell)
Un fork del Korn Shell para el MirBSD, basado en el pdksh. Aun le falta pulir unas cosillas para que tenga la altura del pdksh, ademas de que es el unico que mantiene su historial de archivo en formato binario en contraste del pdksh y del ksh93 que lo mantienen como texto ASCII (estos dos ultimos pueden usar el mismo archivo de historial sin ningun problema).
2008-08-19 20:26:36-05
Hay muchas variantes del Korn Shell, pero se pueden resumir en las siguientes:
* pdksh (Public Domain Korn Shell).
Originalmente el Korn Shell era de codigo cerrado como lo es Windows, esto hizo que la gente hiciera este clon tal como paso con el editor vi. Es el cual esta basado el ksh por default de la gente de BSD (NetBSD y OpenBSD solamente).
* ksh93.
La version oficial del Korn Shell de AT&T, ahora ya es de codigo abierto, sin embargo, como durante mucho tiempo permanecio cerrado esto hizo que la gente del pdksh le comiera el mandado en algunas cosas como al momento de completar los nombres de los archivos, el algoritmo del pdksh es mejor que del ksh93, lo mismo pasa en la edicion de la linea de entrada al estilo del editor vi, es mucho mejor en pdksh.
* mksh (MirBSD Korn Shell)
Un fork del Korn Shell para el MirBSD, basado en el pdksh. Aun le falta pulir unas cosillas para que tenga la altura del pdksh, ademas de que es el unico que mantiene su historial de archivo en formato binario en contraste del pdksh y del ksh93 que lo mantienen como texto ASCII (estos dos ultimos pueden usar el mismo archivo de historial sin ningun problema).
2008-08-19 20:26:36-05










