查看默认用的SHELL
主要可能是bash和csh(tcsh是csh的增强版)
echo $SHELL
查看当前系统可用的shell
cat /etc/shells
bash支持
默认配置~/.bashrc
变量的定义
VAR=X
AVAR=(X1 X2)
环境变量的定义
export VAR=X或
VAR=X
export VAR
命令搜索路径的定义
PATH=/bin:/usr/bin
命令hash的更新
不需要
csh支持
默认配置~/.cshrc
变量的定义
set VAR = X
set AVAR = (X1 X2)
set var_a = whoami
set var_path = ~/env/env_dir
变量使用时为${VAR}
带cat/grep/awk的用法
set var1 = cat file | grep "^${head_var}[[:space:]]*,[[:space:]]*${middle_var}[[:space:]]*," |awk -F'\r' '{print $1}' | awk -F',' '{print $7}'
[[:space:]]匹配空格
环境变量的定义
unsetenv ENV_A
setenv ENV_A ~/env_path/env_path_dir
命令搜索路径的定义
set path=(/bin /usr/bin) 或
setenv PATH /bin:/usr/bin
命令hash的更新
rehash
其他
alias go_path ‘cd ~/env_path/env_path_dir’
source script.sh:在脚本运行结束后,脚本中的变量在当前环境仍会被保留。
sh script.sh:在当前环境启动一个子进程运行脚本, 脚本中的变量会在脚本运行结束时释放掉。
source里可以cd,而sh a.sh里执行cd无效
source setup param_a param_b
in setup file, ${#argv} = 2, $argv[1] = param_a, $argv[2] = param_b
if(hostname
== “server-a” || hostname
== “server-b”) then
else if(hostname
== “server-c” || hostname
== “server-d”) then
endif
echo “”