Commit 591c2245 authored by Wayne Davison's avatar Wayne Davison

Improve lsh's handling of -l user option w/cd.

parent b223d96b
......@@ -7,7 +7,6 @@
# command.
user=''
prefix=''
do_cd=y # Default path is user's home dir, just like ssh.
while : ; do
......@@ -22,14 +21,13 @@ while : ; do
done
if [ "$user" ]; then
prefix="sudo -H -u '$user'"
prefix=''
if [ $do_cd = y ]; then
home=`perl -e "print((getpwnam('$user'))[7])"`
# Yeah, this may fail, but attempts to get sudo to cd are harder.
cd $home
prefix="cd '$home' ;"
fi
elif [ $do_cd = y ]; then
cd
sudo -H -u "$user" sh -c "$prefix $*"
else
[ $do_cd = y ] && cd
eval "${@}"
fi
eval $prefix "${@}"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment