Linux中的() {}
来源:互联网 发布:部落冲突天术升级数据 编辑:程序博客网 时间:2024/06/05 01:54
()和{}都是对一串的命令进行执行,但有所区别:
A,()只是对一串命令重新开一个子shell进行执行
B,{}对一串命令在当前shell执行
C,()和{}都是把一串的命令放在括号里面,并且命令之间用;号隔开
D,()最后一个命令可以不用分号
E,{}最后一个命令要用分号
F,{}的第一个命令和左括号之间必须要有一个空格
G,()里的各命令不必和括号有空格
H,()和{}中括号里面的某个命令的重定向只影响该命令,但括号外的重定向则影响到括号里的所有命令
几种特殊的替换结构:${var:-string},${var:+string},${var:=string},${var:?string}
在上面这五种替换结构中string不一定是常值的,可用另外一个变量的值或是一种命令的输出。
四种模式匹配替换结构:${var%pattern},${var%%pattern},${var#pattern},${var##pattern}
这四种结构的意义是:${var%pattern}和${var%%pattern}表示从最右边(即结尾)匹配的,${var#pattern} 和${var##pattern}从最左边(即开头)匹配的。其中${var%pattern}和${var#pattern}是最短匹 配,${var%%pattern}和${var##pattern}是最长匹配。只有在pattern中使用了通配符才能有最长最短的匹配,否则没有最 长最短匹配之分。
POSIX标准的扩展计算:$((exp)) 这种计算是符合C语言的运算符,也就是说只要符合C的运算符都可用在$((exp)),甚至是三目运算符。
注意:这种扩展计算是整数型的计算,不支持浮点型.若是逻辑判断,表达式exp为真则为1,假则为0。
转载http://my.oschina.net/xiangxw/blog/11407
- Linux中的() {}
- Linux中的Socket编程(不限Linux)
- Linux 中的汇编语言(一)
- Linux 中的汇编语言(二)
- Linux 中的汇编语言(三)
- Linux 中的汇编语言(四)
- linux中的特殊符号 (|) 管道。
- linux中的ll(转)
- (转)Linux 中的汇编语言
- Linux中的信号(1)
- Linux中的信号(2)
- Linux中的信号量(上)
- linux(Ubuntu,redhat)中的Mysql 中的安装与使用
- 数据包在Linux中的流程(转载)
- Linux中的GDB调试学习(-)
- Linux中的curl命令(转载)
- Linux 内核中的 GCC 特性(转)
- Linux操作系统中的管道(pipe)使用方法
- 一位女程序员的奋斗路程
- Fibnacci序列
- 如何制作vc静态链接库的IDA SIG文件?
- 安卓获得屏幕状态(非广播被动接收)
- 几种数据计算工具,总有一款适合你
- Linux中的() {}
- bootstrap3的img-thunbnail和img-responsive
- MySQL5.6最佳版本
- Linux下C++开发工具介绍
- UVA562 Dvide Coins
- 了解JMS
- 机房收费系统———组合查询
- SpringMVC添加CXF webservice
- 第十四周项目3--成绩处理第二季