shell常用也是常错的几个知识点
2018-01-16 20:53
204 查看
1 定义变量不能有空格
colon =`grep ":" "$result1"`
2 中括号两遍必须有空格
if [ "$colon" -eq "0" ]
如果是||比较是 if [ "$colon" -eq "0" ] || [ "$linenum" -eq "1" ]
不是 if [ "$colon" -eq "0" || "$linenum" -eq "1" ]
3 数值计算
i++
((i=i+1))
4 数值,string 比较
5 数组取值
for ((i=0;i<${#arr[@]};i++))
do
name=`echo ${arr[$i]} |awk -F '=' '{print $1}'`
gs=$gs";"$name
echo "line22:${arr[$i]};$name;$gs"
done
不是$arr[i]
6 eval使用
所以此时我们需要通过使用eval来解决该问题,eval添加到语句的开头,在执行该语句的时候,会扫描两次该语句:第一次扫描能够替换变量对应的值,第二次扫描就是为了识别语句并运行该语句
例子:
7 awk的结果传给shell
string:ACCESS=Access
abce=`echo $result1 |awk -F '=' '{printf("gs=\"%s\";a=\"%s\"",$1,$2)}'`
eval $abce
echo "line39:$gs;$a;result1=$result1"
colon =`grep ":" "$result1"`
2 中括号两遍必须有空格
if [ "$colon" -eq "0" ]
如果是||比较是 if [ "$colon" -eq "0" ] || [ "$linenum" -eq "1" ]
不是 if [ "$colon" -eq "0" || "$linenum" -eq "1" ]
3 数值计算
i++
((i=i+1))
4 数值,string 比较
5 数组取值
for ((i=0;i<${#arr[@]};i++))
do
name=`echo ${arr[$i]} |awk -F '=' '{print $1}'`
gs=$gs";"$name
echo "line22:${arr[$i]};$name;$gs"
done
不是$arr[i]
6 eval使用
所以此时我们需要通过使用eval来解决该问题,eval添加到语句的开头,在执行该语句的时候,会扫描两次该语句:第一次扫描能够替换变量对应的值,第二次扫描就是为了识别语句并运行该语句
例子:
7 awk的结果传给shell
string:ACCESS=Access
abce=`echo $result1 |awk -F '=' '{printf("gs=\"%s\";a=\"%s\"",$1,$2)}'`
eval $abce
echo "line39:$gs;$a;result1=$result1"
相关文章推荐
- 几个常用的shell命令
- <Linux shell>Linux常用的几个指令
- 分享几个Linux下常用的shell命令
- 常用的几个shell脚本_4_更新jsp
- Shell中for循环的几个常用写法
- 几个常用SHELL命令
- 几个常用的linux快捷键和shell知识
- Shell 编程常用知识点用实例
- Linux操作系统几个常用知识点
- JavaScript开发中几个常用知识点总结
- 几个常用shell脚本命令
- 几个常用的shell脚本
- shell系列-2.后台运行任务几个常用命令
- 分享几个社交类网站常用并且也是最好用的jquery类库
- Oracle的常用数据类型和几个小的知识点——《一周问题集》
- 最常用的也是最容易忘记的Shell知识
- Shell中for循环的几个常用写法
- shell脚本常用的几个命令
- Mac服务器服务更新常用的几个shell命令
- Android常用的几个知识点