set命令作用主要是显示系统中已经存在的shell变量,以及设置shell变量的新变量值。
root@ubuntu:/work#set
BASH=/bin/bash
BASHOPTS=checkwinsize:cmdhist:complete_fullquote:expand_aliases:extquote:force_fignore:histappend:hostcomplete:interactive_comments:progcomp:promptvars:sourcepath
BASH_ALIASES=()
BASH_ARGC=()
BASH_ARGV=()
BASH_CMDS=()
BASH_LINENO=()
BASH_SOURCE=()
BASH_VERSINFO=([0]="4" [1]="3" [2]="48" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu")
BASH_VERSION='4.3.48(1)-release'
…………
在shell脚本中,使用set可以改变$n的值。
root@ubuntu:/work#touch win9
root@ubuntu:/work#vi win9
#/bin/sh
set ok okk
echo $1 $2
root@ubuntu:/work#chmod +x win9
root@ubuntu:/work#./win9
ok okk