码迷,mamicode.com
首页 > 系统相关 > 详细

Shell变量

时间:2016-08-08 00:37:43      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:

环境变量

Shell进程的环境变量,可以从当前进程传给fork出来的子进程,用printenv命令显示当前进程的环境变量。

技术分享

。。。

本地变量

只存在与当前Shell进程,set命令可以显示当前Shell进程中定义的所有变量和函数

定义变量、定义和导出环境变量

export VARNAME=value

可以用unset删除已定义的环境变量或本地变量

变量的引用:

变量的VARNAME,则${VARNAME}可以表示它的值。

命令的代换:‘或$(),建议使用$()进行替换

技术分享

执行结果:

技术分享

但‘和$()运行命令的方式又什么不同?

$()可以分解为两个部分,一个是$符号,另外一个是()小括号$符的作用是变量替换,即用变量的值去替换当前的内容,小括号则是开一个子shell优先去执行小括号内部的命令
在$(命令)中,命令部分的内容不会被父shell解析,而反引号的部分却会被解析,例如`\`,`$`,```???

单引号:(保持引号内的所有字符都是字面值,字符串中不能出现单引号)

双引号:(保持引号内所有字符的字面值)(但以下情况除外)

$加变量名可以取变量的值? 反引号仍表示命令替换?
\$表示$的字示值
\`表示`的字示值?
\"表示"的字示值?
\\表示\的字示值 除以上情况之外,在其它字符前面的\无特殊含义,只表示字面值:

技术分享 

eval命令:

eval命令将会首先扫描命令行进行所有的置换,然后再执行该命令。

1、eval命令也可以用于回显简单变量,不一定是复杂变量

2、 执行含有字符串的命令

3、命令还可以用来显示出传递给脚本的最后一个参数

4、给每个值一个变量名

Shell变量

标签:

原文地址:http://www.cnblogs.com/Blog-day/p/My_Blog_Days1-29.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!