shell 中的各种括号
来源:互联网 发布:应力分析软件 编辑:程序博客网 时间:2024/05/09 02:45
一、双圆括号,即((...))
作用1:使变量执行算术运算
#!/bin/basha=10b=20c=$((a*b))echo "c=$c"[root@nn ~]# ./test.sh c=200
作用2:使bash shell 实现C语言风格的变量操作,包含5种
1.首先是C语言风格的赋值,C语言允许赋值号两端存在空格,但是在shell中是不允许的 ((a = 2000))
2.其次,变量 可以使用C语言中的自增、自减 ((a++)) ((a--)) ((++a))
3.可以用于for,while,if中的条件测试
4.支持多个表达式运算,各个表达式之间用“,”分开
5.可以进行四则运算和逻辑运算
二、单圆括号 (...)
作用1:强制将()中的命令运行在子shell中
(
command 1
command 2
....
)
括号中的命令将会新开一个子shell顺序执行,所以括号中的变量不能够被脚本余下的部分使用。括号中多个命令之间用分号隔开,最后一个命令可以没有分号,各命令和括号之间不必有空格。
[root@nn shell]# cat subsvar.sh #!/bin/bash echo "The level of father shell is : $BASH_SUBSHELL"outervar=OUTER (#进入子shellecho "The level of son shell is :$BASH_SUBSHELL"innervar=INNER echo "innervar=$innervar"echo "outervar=$outervar")#回到父shellecho "The level of father shell is : $BASH_SUBSHELL"if [ -z "$innervar" ]then echo "The \$innervar is not defined in main body"else echo "The \$innervar is defined in main body"fi运行结果: [root@nn shell]# ./subsvar.sh The level of father shell is : 0The level of son shell is :1innervar=INNERoutervar=OUTERThe level of father shell is : 0The $innervar is not defined in main body
作用2:命令替换。等同于`cmd`,shell扫描一遍命令行,发现了$(cmd)结构,便将$(cmd)中的cmd执行一次,得到其标准输出,再将此输出放到原来命令。有些shell不支持,如tcsh
a=$(ls /root) 等价于 a=`ls /root` #一定要找个变量接一下 ,它与直接执行 ls /root 不一样;$() 与`` 都是将结果保存起来echo $a
作用3:用于初始化数组 如:array=(a b c d)
#!/bin/bash city=(nanjing beijing jinan zibo linyi)echo "city[0]=${city[0]}"echo "city[1]=${city[1]}"echo "city[2]=${city[2]}"echo "city[3]=${city[3]}"echo "city[4]=${city[4]}"echo "city[5]=${city[5]}" ~ ~ ~ ~ 运行结果:~ [root@nn shell]# chmod +x arry1.sh [root@nn shell]# ./arry1.sh city[0]=nanjingcity[1]=beijingcity[2]=jinancity[3]=zibocity[4]=linyicity[5]=#!/bin/bash city=(nanjing [3]=beijing jinan zibo linyi) //()可以给任意一个元素随机赋值echo "city[0]=${city[0]}"echo "city[1]=${city[1]}"echo "city[2]=${city[2]}"echo "city[3]=${city[3]}"echo "city[4]=${city[4]}"echo "city[5]=${city[5]}"~运行结果: ~[root@nn shell]# ./arry1.sh city[0]=nanjingcity[1]=city[2]=city[3]=beijingcity[4]=jinancity[5]=zibo ~
0 0
- shell中的各种括号
- shell中的各种括号
- shell中的各种括号
- shell中的各种括号
- shell中的各种括号
- shell 中的各种括号
- shell中的各种括号
- shell中的各种括号的使用方法
- shell中的各种括号的使用方法
- shell中的各种括号的使用方法
- shell中的各种括号的使用方法
- shell中的各种括号的意义
- shell中的各种括号的使用方法
- shell中的各种括号的使用方法
- linux shell中的各种括号的使用方法
- shell中的各种括号的使用方法
- shell中的各种括号的使用方法
- Shell中各种括号
- mybatis 之 generator插件使用 集成到了eclipse 自动生成实体,example,mapper
- iOS获取当前年、月、日等信息
- linux下查看和添加PATH环境变量
- [详解嵌套ListView、ScrollView布局显示不全的问题]
- 中国残疾人事业“十二五”发展纲要
- shell 中的各种括号
- maven导入poi配置
- 使用Python往Elasticsearch插入数据
- 欢迎使用CSDN-markdown编辑器
- 第十一周实践项目4————教师兼干部类
- checkbox全选/取消/选中所有奇数/反选/获得选中的值
- 【LeetCode】141.Linked List Cycle
- 小何讲Linux: 基本文件操作和实例
- 小笔记