I want to do :
env | egrep -o '^\w+=' | unset
The problem is that :
env | egrep -o '^\w+='
prints things like (notice the equal sign) :
XDG_VTNR= LC_PAPER= SSH_AGENT_PID= KDE_MULTIHEAD= LC_ADDRESS= XDG_SESSION_ID=
How do I extract just the variable names so I can unset them?
You need something more like this:
for i in `env | sed 's/=.*//'` ; do
unset $i
done
Note, however, this will probably do more things than you want. EG, it'll unset your path too!