Unix/Linux:TCSH/CSH Shell设置变量
时间:2020-01-09 10:43:51 来源:igfitidea点击:
在FreeBSD UNIX或者Linux操作系统下,如何使用c shell(tcsh或者csh)设置环境变量?如何在类似操作系统的Unix下使用csh shell保存变量?您可以在c shell(tcsh/csh)下使用set或者setenv命令来设置环境变量。 c shell使用以下语法来设置环境变量,并且通常用于
- 设置或者修改PATH。
- 设置您的默认(首选)编辑器。
- 设置寻呼机等。
setenv命令语法
如果使用csh或者tcsh,则在shell提示符下执行:
setenv var value
在此示例中,在名为vech的csh(和tcsh)中将环境变量设置为bus:
setenv vech bus
要显示$vech的值,请执行:
echo "$vech"
或者
printf "%s\n" "$vech"
在此示例中,修改路径,执行:
setenv PATH $PATH\:/dir/path setenv PATH $PATH\:/usr/local/app1/bin
要查看所有变量,请执行:
setenv
输出示例:
_=/bin/csh OLDPWD=/home/Hyman PWD=/home/Hyman SHLVL=2 USER=Hyman LOGNAME=Hyman HOME=/home/Hyman MAIL=/var/mail/Hyman PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/home/Hyman/bin TERM=xterm FTP_PASSIVE_MODE=YES BLOCKSIZE=K SHELL=/usr/local/bin/zsh SSH_CLIENT=192.168.1.5 57038 22 SSH_CONNECTION=192.168.1.5 57038 192.168.1.109 22 SSH_TTY=/dev/pts/0 HOSTTYPE=FreeBSD VENDOR=unknown OSTYPE=FreeBSD MACHTYPE=unknown GROUP=Hyman HOST=fdbsd9 REMOTEHOST=192.168.1.5 EDITOR=vi PAGER=more
设置命令语法
语法为:
set var=val set foo=bar echo "$foo"
~/.cshrc文件
您可以在$HOME/.cshrc文件中设置setenv和其他命令。
该文件位于您的主目录中,每当c shell启动时,该文件就会被读取。
如果是登录脚本,则在.cshrc文件之后读取.login文件。
在此示例中,将默认寻呼机设置为大多数并添加到~/.cshrc文件
echo 'setenv PAGER most' >> $HOME/.cshrc
csh:设置与setenv
您可以使用set或者setenv命令初始化变量,其中set用于当前shell,setenv用于当前shell和任何子shell(即它将自动将变量导出到subshell)。
setenv应该用于PATH,HOME和所有其他与系统相关的环境设置。
仅在csh脚本中使用set命令。