blank can't exist.png
如果变量值有空格,可用双引号" "或单引号' '来包围变量值,但两者是有区别:
双引号" "内的一些特殊字符,可以保持原有的特性,例如:
double quotation marks.png
而单引号' '内的一些特殊字符,仅为一般字符,即纯文本,例如:
single quotation marks.png
如果想显示一些特殊字符($、空格、!等),在字符前面加上用转义字符\
有些时候,变量的值可能来源于一些命令,这时你可以使用反单引号`命令`或$(命令),例如:
使用反单引号`命令`的方式
get information from comand 1.png
使用$(命令)的方式
get information from comand 2.png
如果变量想增加变量的值,可以使用$variable累加
append variable value.png
如果变量需要在其他子进程使用,用export关键字来设置变量为环境变量
export VARIABLE
系统环境变量一般都是字母全部大写,例如:PATH,HOME,SHELL等
如果想取消设置变量的值,使用unset variable命令。注意,变量之前是没有符号$
unset variable.png
环境配置文件之前那些设置的环境变量,一旦退出系统后,就不能再次使用,如果想再次使用,必须重新再设置才行。如果想就算退出系统,也能重新使用自定义的环境变量,那怎么办呢?
不用怕,系统提供一些环境配置文件:/etc/profile和~/.bash_profile。/etc/profile是系统整体的设置,每个用户共享,最好不要修改;而~/.bash_profile属于单个用户的设置,每个用户设置后,互不影响和共享。但因为我使用oh my zsh,之前~/.bash_profile设置一些配置都不生效了,但它提供一个环境配置文件.zshrc,所以如果想设置环境变量TEST,只需将export TEST=test添加.zshrc即可。
export variable in zshrc file.png
但在.zshrc文件设置好环境变量TEST后,echo $TEST为空,原因是还没使用source命令来读取环境配置文件。使用source .zshrc命令之后,设置环境变���TEST生效了
source command.png
数据重定向 含义当输入命令行时,一般都有输入参数(standard input),而命令行处理完之后,一般都有输出结果,结果有可能成功(standard output),也有可能失败(standard error),而这些结果一般都会输出到屏幕上,如果你想控制结果输出到文件或以文件作为输入的话,你需要了解数据重定向的分类和符号操作。