How to unset all variables in shell?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting How to unset all variables in shell?
# 1  
Old 10-01-2009
How to unset all variables in shell?

can I use unset to unset all the variables in a shell sciprt?

VAR1=1
VAR2=2
VAR3=3
unset

whether this unset will afftect any system variables?

Thanks,
# 2  
Old 10-01-2009
Code:
The unset command deletes a shell variable,or non-shell variable effectively setting it to null. Note that this command
does not affect positional parameters

but note that you need to put the variable name after the unset command.

Example1:-
unset PATH
echo $PATH

Example2:-
variable=hello # Initialized.
echo "variable = $variable"
unset variable # Unset.
# Same effect as: variable=
echo "(unset) variable = $variable" # $variable is null.

BR
# 3  
Old 10-01-2009
The following function 'gsunset', deletes the variables specified by an RE :
Code:
gunset()
{
  local var_re="${1:-.*}"
  eval $( set | \
         awk -v FS='='        \
             -v VAR="$var_re" \
            '$1 ~ VAR { print "unset", $1 }' )
}

VAR1=value1
VAR2=value2
VAR3=value3

echo "Vars before gunset"
set | grep ^VAR
gunset 'VAR.*'
echo "Vars after gunset"
set | grep ^VAR

Output
Code:
Vars before gunset
VAR1=value1
VAR2=value2
VAR3=value3
Vars after gunset

Jean-Pierre.
# 4  
Old 10-01-2009
Change your approach. NEVER use undeclared variables. There is an option "set -o nounset" if I remember correctly.
You should have something like this:

Code:
#!/bin/env ksh
typeset my_variable
typeset all_my_variables_should_be_defined_like_that
my_variable='abc'


Last edited by vgersh99; 10-01-2009 at 05:48 PM.. Reason: code tags, PLEASE!
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Where unset command locates?

Hi, Can someone tell what is the path for "unset", I tried "which" command but getting below error # which unset /usr/bin/which: no unset in (/usr/lib/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin/:/root/bin) (9 Replies)
Discussion started by: stew
9 Replies

2. UNIX for Dummies Questions & Answers

Unset environement variable

Hi, I have the following line in the script unset _SET_ENV_AA unset _SETENV but where I can check the value for this environement variable (2 Replies)
Discussion started by: stew
2 Replies

3. Shell Programming and Scripting

Listing all local variables for unset

I have tried to thoroughly search other threads before posting this question... I have a shell script (bsh) that I'd like to "re-execute" if the user chooses to. Before the program is executed again the local variables (those set within the script) need to be unset. Is there a command that... (6 Replies)
Discussion started by: powwm
6 Replies

4. Shell Programming and Scripting

Unset variable with characters in value

I have a script with a $PASSWORD variable. I unset it right after using it, just to minimize the chance it could be left around for a snooper. That worked just fine... until I used a password with a value of "P@ssw0rd" Now, unset (even with -f, even with the variable enquoted) tells me: unset:... (1 Reply)
Discussion started by: jnojr
1 Replies

5. Shell Programming and Scripting

Unset variables in shell when it running two different loops

I have a script to start/stop/restart the tomcat application. When we run the script first time i.e stop/start it set all env variables(DISTRIB_ID,NAME,TOMCAT_CFG,....etc),but when we restart the tomcat it is running in the same shell.....I need to set the variables when i restart the tomcat(in the... (1 Reply)
Discussion started by: praveen265
1 Replies

6. Shell Programming and Scripting

[ask] about unset variables

I'm wondering, is the number of variables will affect execution time of my bash script or maybe affect the cpu workload, cpu memory, etc ? If I create so many variables, should I unset each one of that variables after I used them or after I think they are no longer needed? and if my script... (2 Replies)
Discussion started by: 14th
2 Replies

7. UNIX for Advanced & Expert Users

unset .bashrc

Could someone please tell me how to unset your .bashrc? I have tried all of these. I can't find anything useful from google. unset -f .bashrc unset .bashrc (9 Replies)
Discussion started by: cokedude
9 Replies

8. Shell Programming and Scripting

How to check exit status of unset variables

Hi All, Is there any way to check exit status of unset variables? In the following code PathX is not set and the script terminates without checking exit status. #!/bin/bash Path="/tmp/log" cd ${PathX:?} if ;then echo "Exit Status : non zero" else echo "Exit Status :... (2 Replies)
Discussion started by: sussus2326
2 Replies

9. UNIX for Advanced & Expert Users

how to unset the readonly variable

Hi All, May be this is a very simple question... $ b=8 $ readonly b $ echo $b 8 $ b=90 -bash: b: readonly variable $ unset b -bash: unset: b: cannot unset: readonly variable I m not able to change the readonly mode of variable b Please help me out.. Thanks Nidhi (2 Replies)
Discussion started by: Nidhi2177
2 Replies

10. Shell Programming and Scripting

How to unset 'finger' info?

Hi, Command "chfn" can be used to change finger information.. can anybody tell me how to unset i mean reset the same finger information. Thanks in advance, Chanakya (3 Replies)
Discussion started by: Chanakya.m
3 Replies
Login or Register to Ask a Question