|
Server : Apache/2.2.2 (Fedora) System : Linux App1.pathumtani.go.th 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12 19:40:16 EDT 2007 i686 User : apache ( 48) PHP Version : 5.2.9 Disable Function : NONE Directory : /usr/share/zsh/4.2.5/functions/ |
Upload File : |
# try to disguise parameters from the eval'd command in case it's a function.
integer __myfd=1
if [[ -n $1 ]]; then
if [[ -z $tcp_by_name[$1] ]]; then
print no such session: $1
__myfd=2
elif [[ -n $2 ]]; then
local TCP_SESS=$1
shift
# A bit tricky: make sure the first argument gets re-evaluated,
# so as to get aliases etc. to work, but make sure the remainder
# don't, so as not to bugger up quoting. This ought to work the
# vast majority of the time, anyway.
local __cmd=$1
shift
eval $__cmd \$\*
return
else
TCP_SESS=$1
return 0;
fi
fi
# Print out the list of sessions, first the number, than the corresponding
# file descriptor. The current session, if any, is marked with an asterisk.
local cur name fd
for name in ${(ko)tcp_by_name}; do
fd=${tcp_by_name[$name]}
# mark current session with an asterisk
if [[ ${TCP_SESS} = $name ]]; then
cur=" *"
else
cur=
fi
print -u $__myfd "sess:$name; fd:$fd$cur"
done
return $(( __myfd - 1 ))