unset命令详解

时间:2023-03-09 18:48:51
unset命令详解

基础命令学习目录首页

功能说明:unset是一个内建的Unix
shell命令,在Bourne shell家族(sh、ksh、bash等)和C shell家族(csh、tcsh等)都有实现。它可以取消设置一个shell变量,从内存和shell的导出环境中删除它。它实现为一个壳层内建指令,因为它直接操纵shell的内部。
只读shell变量不能被unset。如果试图unset只读变量,unset命令将打印一个错误消息,并返回一个非零的退出代码。
This command removes one or more variables. Each name is a variable name, specified in any of the ways acceptable to the
set command. If a name refers to an element of an array then that element is removed without affecting the rest of the array. If a
name consists of an array name with no parenthesized index, then the entire array is deleted. The
unset command returns an empty string as result. An error occurs if any of the variables doesn't exist, and any variables after the non-existent one are not deleted.
语  法:
unset [-fv][变量或函数名称]补充说明:unset为shell内建指令,可删除变量或函数。参   数:
  -f  仅删除函数。
  -v  仅删除变量。
[3][root][test:/home/root/Desktop] set lx = "ls -lh"
[3][root][test:/home/root/Desktop] $lx
total 80K
drwxrwxr-x  2 root tt 4.0K 2014-02-19 09:32 bin
drwxrwxr-x  3 root tt 4.0K 2014-02-10 10:56 Data
drwxrwxr-x  2 root tt 4.0K 2014-02-19 09:32 lib
drwxrwxr-x 10 root tt 4.0K 2014-02-20 16:12 script
-r--r--r--  1 root tt  312 2014-02-19 09:32 sut.cs
[3][root][test:/home/root/Desktop]
[3][root][test:/home/root/Desktop]
[3][root][test:/home/root/Desktop] set
......此处省略输出
[3][root][test:/home/root/Desktop] set |grep -i lx
lx ls -lh
[3][root][test:/home/root/Desktop]
[3][root][test:/home/root/Desktop] unset lx
[3][root][test:/home/root/Desktop] set | grep -i lx
---------------------
作者:惹不起的程咬金
来源:****
原文:https://blog.****.net/carolzhang8406/article/details/21246145
版权声明:本文为博主原创文章,转载请附上博文链接!