Shell编程 - 括号篇

括号 用途
( ) 用途1:在运算中,先计算小括号里面的内容 用途2:数组 用途3:匹配分组
(( )) 用途1:表达式,不支持-eq这类的运算符。不支持-a和-o,支持<=、>=、<、>这类比较符和&&、|| 用途2:C语言风格的for(())表达式
$( ) 执行Shell命令,与反撇号等效
$(( )) 用途1:简单算数运算 用途2:支持三目运算符 $(( 表达式?数字:数字 ))
[ ] 条件表达式,里面不支持逻辑判断符
[[ ]] 条件表达式,里面不支持-a和-o,不支持<=和>=比较符,支持-eq、<、>这类比较符。支持=~模式匹配,也可以不用双引号也不会影响原意,比[]更加通用
$[ ] 简单算数运算
{ }. 对逗号(,)和点点(...)起作用,比如touch {1,2}创建1和2文件,touch {1..3}创建1、2和3文件
${ }. 用途1:引用变量 用途2:字符串处理

案例1. [] [[]]区别****

含义与特点 test或[] [[]]或(())
共同点 都可以用于判断 都可以用于判断
区别1 仅支持普通判断,不支持正则 [[]]普通判断,支持正则
区别2 表示逻辑关系(与或非)符号不同 -a -o ! -gt [[]] && || ! < > >= <=
应用场景 大部分情况使用[]进行常见判断 [[]]使用正则的时候使用2对中括号,(())可用于运算
posted @ 2024-11-30 22:16  kyle_7Qc  阅读(27)  评论(0)    收藏  举报