首页 > 系统相关 >shell中的括号

shell中的括号

时间:2023-01-29 16:12:50浏览次数:42  
标签:字符 shell 命令 echo 括号 小括号

目录

单小括号()

命令组

(command1;command2;command3)连接多个命令组,用;隔开,最后一个命令后;可加可不加。括号中的命令会新开一个子shell顺序执行,所以里面的操作对括号外主进程无关。

命令替换

$(command)先执行 command 命令,得到标准输出,再将此输出放回到原来命令。

初始化数组

array=(a b c)

双小括号(())

C语言规则运算

表达式 $((exp)),其中exp只要符合C语言规则的运算符即可,包括加减乘除、+=、<=、>=等。

算术比较

在((exp))中可以进行算术比较(不能进行字符串比较),双括号中的变量可以省略$符号前缀,当然也可以带着。

单中括号[]

条件判断

[] 本质上是 test 语句,[是调用test的命令标识,]是关闭条件判断

字符范围

用作正则表达式的一部分,描述一个匹配的字符范围

数组下标

echo ${a[0]}

单大括号{}

字符扩展

for i in {0,2};do echo $i;done
输出0 2
for i in {0..2};do echo $i;done
输出0 1 2

命令组

{}与()都可以执行一连串命令,区别如下:
()会新开一个子进程,括号内命令与括号外无关。{}内的命令不会新开一个子进程运行,即脚本余下部分仍可使用括号内变量。
两者括号内的命令间都要用;隔开,但()最后一个命令的分号可有可无,但{}最后一个也必须有分号。
{}的第一个命令和左括号{之间必须要有一个空格(右括号}无此要求),而()两个括号的空格均可有可无。

字符串粘贴

${var}_hello
链接https://blog.csdn.net/m0_47219942/article/details/107442691

标签:字符,shell,命令,echo,括号,小括号
From: https://www.cnblogs.com/xzh-personal-issue/p/17072965.html

相关文章