unset是一个内建的Unix shell命令，在Bourne shell家族（sh、ksh、bash等）和C shell家族（csh、tcsh等）都有实现。它可以取消设置一个shell变量，从内存和shell的导出环境中删除它。它实现为一个壳层内建指令，因为它直接操纵shell的内部。只读shell变量不能被unset。如果试图unset只读变量，unset命令将打印一个错误消息，并返回一个非零的退出代码。