shell脚本之符号与命令
2017-07-12 16:15
323 查看
1.理解``和$()
反引号在shell脚本中有独特的作用,凡是被反引号包括的内容shell会先执行该命令,再将该命令的输出结果代换到当前命令行中。所以反引号的作用是命令替换。$()则是算数代换,在shell脚本中,被双括号括起来的算数命令可以被替换成算术结果。
$(())中只能用+
- * / %运算符进行算数运算,而且只能做整数运算。
2.调研eval命令
(1)eval命令将会首先扫描命令行进行所有的替换,然后再执行命令。该命令使用于那些一次扫描无法实现其功能的变量。该命令对变量进行两次扫描。这些需要进行两次扫描的变量有时候被称为复杂变量。
(2)eval也可以用于回显简单变量,不一定是复杂变量。NAME=ZONEeval
echo $NAME等价于echo
$NAME
(3)eval命令还可以显示出传递给脚本的最后一个参数。
(4)eval命令可以给一个变量一个值eval
”${NAME}=${VALUE}“
3.如何运行shell脚本
shell脚本的后缀一般是.sh,但是因为shell是非编译的解释型语言,所以执行时和别的C/C++有所不同。
第一种:chmod
+x test.sh 给脚本加上执行权限
./test.sh
第二种:
/bin/bash test.sh
反引号在shell脚本中有独特的作用,凡是被反引号包括的内容shell会先执行该命令,再将该命令的输出结果代换到当前命令行中。所以反引号的作用是命令替换。$()则是算数代换,在shell脚本中,被双括号括起来的算数命令可以被替换成算术结果。
$(())中只能用+
- * / %运算符进行算数运算,而且只能做整数运算。
2.调研eval命令
(1)eval命令将会首先扫描命令行进行所有的替换,然后再执行命令。该命令使用于那些一次扫描无法实现其功能的变量。该命令对变量进行两次扫描。这些需要进行两次扫描的变量有时候被称为复杂变量。
(2)eval也可以用于回显简单变量,不一定是复杂变量。NAME=ZONEeval
echo $NAME等价于echo
$NAME
(3)eval命令还可以显示出传递给脚本的最后一个参数。
(4)eval命令可以给一个变量一个值eval
”${NAME}=${VALUE}“
3.如何运行shell脚本
shell脚本的后缀一般是.sh,但是因为shell是非编译的解释型语言,所以执行时和别的C/C++有所不同。
第一种:chmod
+x test.sh 给脚本加上执行权限
./test.sh
第二种:
/bin/bash test.sh
相关文章推荐
- Shell脚本通用命令符号解析
- shell脚本 符号 `` 和$()的对比 及eval命令
- Shell脚本学习(三):shell 函数和一些常用符号和命令
- shell脚本学习笔记(二)—— 引字符号、db2命令选项、date
- shell脚本和命令调用
- SHELL脚本的基础知识2——使用结构化命令
- shell脚本学习-8(sed命令学习)
- shell脚本学习-9(ln命令学习)
- 在脚本中执行命令的符号
- 脚本shell中的tr 命令使用与实例
- shell 脚本之程序流程控制命令(1)
- 浅析Java执行外部命令的几个要点(4)——支持shell的"|","`","*","?"等特殊符号
- linux C程序中获取shell脚本输出(如获取system命令输出)
- shell脚本中的``导致sed命令解析失败
- 巨简单循环shell脚本验证&符号后台操作(并记录查看当前shell的方法)
- SHELL脚本的基础知识3——更多结构化命令
- shell脚本学习-7(sed命令学习)
- shell脚本中一些特殊符号
- shell脚本学习-11(cut命令学习)
- shell脚本中一些特殊符号