119 lines
2.7 KiB
Bash
119 lines
2.7 KiB
Bash
# kshrc.ksh startup file for OS/2 version of ksh
|
|
|
|
set -o trackall
|
|
set -o ignoreeof
|
|
|
|
alias a:='cd a:.'
|
|
alias b:='cd b:.'
|
|
alias c:='cd c:.'
|
|
alias d:='cd d:.'
|
|
alias e:='cd e:.'
|
|
alias f:='cd f:.'
|
|
alias g:='cd g:.'
|
|
alias h:='cd h:.'
|
|
alias i:='cd i:.'
|
|
alias j:='cd j:.'
|
|
alias k:='cd k:.'
|
|
alias l:='cd l:.'
|
|
alias m:='cd m:.'
|
|
|
|
alias h='fc -l'
|
|
alias j='jobs'
|
|
#alias which='type'
|
|
alias back='cd -'
|
|
alias cls='print -n "\033[H\033[2J"'
|
|
|
|
alias dir='cmd /c dir'
|
|
alias del='cmd /c del'
|
|
alias erase='cmd/c erase'
|
|
alias copy='cmd /c copy'
|
|
alias start='cmd /c start /f'
|
|
alias path='print -r $PATH'
|
|
|
|
alias ll='ls -lsAFk'
|
|
alias lf='ls -CAFk'
|
|
alias cp='cp -p'
|
|
alias ls='ls -F'
|
|
|
|
clock_p () {
|
|
PS1='${__[(H=SECONDS/3600%24)==(M=SECONDS/60%60)==(S=SECONDS%60)]-$H:$M:$S}>'
|
|
typeset -Z2 H M S; let SECONDS=`date '+(%H*60+%M)*60+%S'`
|
|
}
|
|
#function needed by add_path, pre_path, and del_path
|
|
no_path () {
|
|
eval _v="\$${2:-PATH}"
|
|
case \;$_v\; in
|
|
*\;$1\;*) return 1 ;; # no we have it
|
|
esac
|
|
return 0
|
|
}
|
|
#if $1 exists and is not in path, append it, or prepend it
|
|
add_path () {
|
|
[ -d ${1:-.} ] && no_path $* && eval ${2:-PATH}="\$${2:-PATH}\;$1"
|
|
}
|
|
pre_path () {
|
|
[ -d ${1:-.} ] && no_path $* && eval ${2:-PATH}="$1\;\$${2:-PATH}"
|
|
}
|
|
#if $1 is in path then remove it
|
|
del_path () {
|
|
no_path $* || eval ${2:-PATH}=`eval print -f '\;$'${2:-PATH}'\;' | sed -e "s!;$1;!;!g" -e "s!^;!!" -e "s!;\\$!!" -e "s!;!\\\\\;!g"`
|
|
}
|
|
|
|
unalias login newgrp
|
|
|
|
if [ "$KSH_VERSION" = "" ]
|
|
then PS1='$PWD>'
|
|
return #bail out for sh which doesn't have edit modes
|
|
fi
|
|
|
|
set -o emacs
|
|
bind ^Q=quote
|
|
bind ^I=complete
|
|
#bind ^[^[=list-file
|
|
|
|
#The next four have been preprogrammed
|
|
bind ^0H=up-history
|
|
bind ^0P=down-history
|
|
bind ^0K=backward-char
|
|
bind ^0M=forward-char
|
|
|
|
bind ^0s=backward-word
|
|
bind ^0t=forward-word
|
|
bind ^0G=beginning-of-line
|
|
bind ^0O=end-of-line
|
|
bind ^0w=beginning-of-history
|
|
bind ^0u=end-of-history
|
|
bind ^0S=eot-or-delete
|
|
|
|
|
|
FCEDIT=t2
|
|
PS1='[!]$PWD: '
|
|
function pushd {
|
|
if [ $# -eq 0 ]
|
|
then d=~
|
|
set -A dirstk ${dirstk[*]} $PWD
|
|
cd $d
|
|
else for d in $*
|
|
do if [ -d $d ] && [ -r $d ] && [ -x $d ]
|
|
then set -A dirstk ${dirstk[*]} $PWD
|
|
cd $d
|
|
else echo "$d: Cannot change directory"
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
echo ${dirstk[*]} $PWD
|
|
unset d ;
|
|
}
|
|
|
|
function popd {
|
|
if [ ${#dirstk[*]} -gt 0 ]
|
|
then let n=${#dirstk[*]}-1
|
|
cd ${dirstk[$n]}
|
|
unset dirstk[$n]
|
|
echo ${dirstk[*]} $PWD
|
|
else echo "popd: Directory stack empty"
|
|
fi
|
|
unset n ;
|
|
}
|