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对中括号,(())可用于运算 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)