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!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top