首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

shell括号(小括号括号,大括号

一、小括号,园括号()   1、单小括号 ()     ①命令组。括号命令将会新开一个子shell顺序执行,所以括号变量不能够被脚本余下部分使用。...等同于`cmd`,shell扫描一遍命令行,发现了$(cmd)结构,便将$(cmd)cmd执行一次,得到其标准输出,再将此输出放到原来命令。有些shell不支持,如tcsh。    ...如:array=(a b c d)   2、双小括号 ((  ))     ①整数扩展。这种扩展计算是整数型计算,不支持浮点型。...②Test和[]可用比较运算符只有==和!=,两者都是用于字符串比较,不可用于整数比较,整数比较只能使用-eq,-gt这种形式。无论是字符串比较还是整数比较都不支持大于号小于号。...与小括号命令不同,大括号命令不会新开一个子shell运行,即脚本余下部分仍可使用括号变量括号命令间用分号隔开,最后一个也必须有分号。

3.8K10
您找到你想要的搜索结果了吗?
是的
没有找到

shell各种括号作用(

三.大括号、花括号 {} 常规用法 1.大括号拓展。(通配(globbing))将对大括号文件名做扩展。在大括号,不允许有空白,除非这个空白被引用或转义。...与小括号命令不同,大括号命令不会新开一个子shell运行,即脚本余下部分仍可使用括号变量括号命令间用分号隔开,最后一个也必须有分号。{}第一个命令和左括号之间必须要有一个空格。...查找,看它是否一给模式pattern结尾,如果是,就从命令行把variable内容去掉右边最短匹配模式 第二种模式: ${variable%%pattern},这种模式时,shell在variable...查找,看它是否一给模式pattern结尾,如果是,就从命令行把variable内容去掉右边最长匹配模式 第三种模式:${variable#pattern} 这种模式时,shell在variable...查找,看它是否一给模式pattern开始,如果是,就从命令行把variable内容去掉左边最短匹配模式 第四种模式: ${variable##pattern} 这种模式时,shell在variable

1.8K20

Shell 括号用法总结

Shell 里面的括号(包括单括号与双括号)可用于一些条件测试: 算术比较, 比如一个变量是否为0, [ $var -eq 0 ]。...算数比较 对变量或值进行算术条件判断: ? 需要注意是 [ 与 ] 与操作数之间一定要有一个空格,否则会报错。比如下面这样就会报错: ? 其他比较操作符: ?...文件系统属性测试 使用不同条件标志测试不同文件系统属性。 ? 使用方法如下: ? 字符串比较 在进行字符串比较时,最好使用双括号 [[ ]]....因为单括号可能会导致一些错误,因此最好避开它们。 检查两个字符串是否相同: ? 当 str1等于str1等于str2 时,返回真。也就是说,str1 和 str2 包含文本是一样。...test 命令也可以从来执行条件检测,用 test 可以避免使用过多括号,[] 测试条件同样可以通过 test 来完成。 ? 等价于: ?

2.4K20

Shell变量

系统变量 常用系统变量 $HOME、$PWD、$SHELL、$USER等 2.案例实操 (1)查看系统变量值 $ echo $HOME (2)显示当前Shell中所有变量:set $ set BASH...(2)等号两侧不能有空格 ​(3)在bash变量默认类型都是字符串类型,无法直接进行数值运算。 ​(4)变量值如果有空格,需要使用双引号或单引号括起来。...unset readonly B=2 echo $B 2 B=9 -bash: B: readonly variable ​(5)在bash变量默认类型都是字符串类型,无法直接进行数值运算 C=1...$D I love b ​(7)可把变量提升为全局环境变量,可供其他Shell程序使用,规则:export 变量名 vim helloworld.sh 在helloworld.sh文件增加echo.../helloworld.sh helloworld 2 特殊变量:$n 1.基本语法 ​$n​(功能描述:n为数字,$0代表该脚本名称,$1-$9代表第一到第九个参数,十以上参数,十以上参数需要用大括号包含

1.5K20

shell各种括号作用(上)

一.小括号,圆括号() 单小括号() 1.命令组。括号命令将会新开一个子shell顺序执行,所以括号变量不能够被脚本余下部分使用。...等同于cmd,shell扫描一遍命令行,发现了$(cmd)结构,便将$(cmd)cmd执行一次,得到其标准输出,再将此输出放到原来命令。有些shell不支持,如tcsh。 3.用于初始化数组。...如:array=(a b c d) 双小括号(( )) 1.整数扩展。这种扩展计算是整数型计算,不支持浮点型。...如:echo $((16#5f)) 结果为95 (16进位转十进制) 3.单纯用 (( )) 也可重定义变量值,比如 a=5; ((a++)) 可将 $a 重定义为6 4.常用于算术运算比较,双括号变量可以不使用...2.Test和[]可用比较运算符只有==和!=,两者都是用于字符串比较,不可用于整数比较,整数比较只能使用-eq,-gt这种形式。无论是字符串比较还是整数比较都不支持大于号小于号。

87220

shell各种括号作用()、(())、]、{}「建议收藏」

大家好,又见面了,我是你们朋友全栈君。 一、小括号,圆括号() 1、单小括号 () ①命令组。括号命令将会新开一个子shell顺序执行,所以括号变量不能够被脚本余下部分使用。...等同于`cmd`,shell扫描一遍命令行,发现了$(cmd)结构,便将$(cmd)cmd执行一次,得到其标准输出,再将此输出放到原来命令。有些shell不支持,如tcsh。...,双括号变量可以不使用$符号前缀。...与小括号命令不同,大括号命令不会新开一个子shell运行,即脚本余下部分仍可使用括号变量括号命令间用分号隔开,最后一个也必须有分号。...(2)(cmd) 命令替换,和`cmd`效果相同,结果为shell命令cmd输,过某些Shell版本不支持()形式命令替换, 如tcsh。

3.8K40

Shell 参数扩展及各类括号Shell 编程应用

1、bash 括号参数扩展(Parameter Expansion) 假设我们定义了一个变量为: file=/dir1/dir2/dir3/my.file.txt 1.1 bash 下 split...echo ${HI^,^} # HellO 看来是不行×_× 2、各类括号在 shell/bash 编程应用 上面应该见识到了 shell 中大括号强大功能,其实 shell 下有很多种括号,不像其它高级语言括号只起到语法和意义作用...,而 shell 下每种括号除了语法、语义作用之外,还对 shell 编程起到了功能上扩展。...2.1 () 在子shell运行 (a=1);echo $a,结果是空,因为a=1不是在当前shell运行(a=1);(echo $a)也是空。...mod=viewthread&tid=218853&page=7# [3] shell/bash编程各类括号应用 http://hi.baidu.com/leejun_2005/item/6f9eb7345e5f4f302f20c453

1.5K70

shell脚本各种括号区别以及用法

最近学到了shell脚本编程,觉得脚本不同括号有不同用处,以及有些括号格式也有特殊要求,下面我就总结一下各种括号用法。...等同于`comm`,shell扫描一遍命令行,发现了$(comm)结构,便将$(comm)comm执行一次,得到其标准输出,再将此输出放到原来命令。...(()) ((表达式))常用于算术运算比较,双括号变量可以不使用$符号前缀。...num=num*2)) done 二、括号[ ];双括号[[ ]] 1:单括号[ ] 1:算术比较, 比如一个变量是否为0, [ $var -eq 0 ]。...在大括号,不允许有空白,除非这个空白被引用或转义。 第一种:对大括号以逗号分割文件列表进行拓展。

3.4K40

快速学习-Shell变量

第4章 Shell变量 4.1 系统变量 常用系统变量 $HOME、$PWD、$SHELL、$USER等 2.案例实操 (1)查看系统变量值 [atguigu@hadoop101 datas]$...(2)等号两侧不能有空格 (3)在bash变量默认类型都是字符串类型,无法直接进行数值运算。 (4)变量值如果有空格,需要使用双引号或单引号括起来。...,可供其他Shell程序使用 export 变量名 [atguigu@hadoop101 datas]$ vim helloworld.sh 在helloworld.sh文件增加echo $B.../helloworld.sh helloworld 2 4.3 特殊变量:$n 1.基本语法 $n (功能描述:n为数字,$0代表该脚本名称,$1-9代表第一到第九个参数,十以上参数,十以上参数需要用大括号包含...,如9代表第一到第九个参数,十以上参数,十以上参数需要用大括号包含,如9代表第一到第九个参数,十以上参数,十以上参数需要用大括号包含,如{10}) 2.案例实操 (1)输出该脚本文件名称、输入参数

44710

Shell变量声明和一些特殊变量

声明变量需要遵守或者注意几点: 在SHELL定义变量比较直接,无类型区别。 变量名和等号之间不能有空格。 变量名首字符必须为字母。 变量名里可以使用下划线。...变量名中间不能有空格,美元符号$,标点符号。 变量名不能使用关键字。 下面用思维导图,更加直观 $0:当前脚本文件名 $n:传递给脚本或函数参数。n 是一个数字,表示第几个参数。...$#:传递给脚本或函数参数个数。 $*:传递给脚本或函数所有参数。 $@:传递给脚本或函数所有参数。被双引号(" ")包含时,与 $* 稍有不同,下面将会讲到。 $?...:上个命令退出状态,或函数返回值。 $$:当前Shell进程ID。对于 Shell 脚本,就是这些脚本所在进程ID

1K20
领券