Shell编程自动化之特殊Shell扩展变量

1.变量的处理

1.1 如果parameter变量值为空,那么返回str字符串。

${parameter:-str}

1.2 如果parameter变量值为空,那么str替代变量值,且返回其值。

${parameter:=str}

1.3 如果parameter变量值为空,那么str当作stderr输出,否则输出变量值。

${parameter:?str}

1.4 如果parameter变量值为空,那么什么都不做,否则str返回。

${parameter:+str}

2.对Linux特殊符号的整理

${vars} 取出变量结果

$vars 取出变量结果

$() 在括号中执行命令,且拿到命令的执行结果

`` 在括号中执行命令,且拿到命令的执行结果

() 开启子shell执行命令结果

3.实例

3.1 数据备份时,删除10天以上的过期数据的脚本

shell 复制代码
find ${dir_path:=/data/mysql_backup/} -name '*.tar.gz' -type f -mtime +10 | xargs rm -f

3.2 批量修改文件名的脚本

shell 复制代码
for file_name in `ls *test*jpg`;do mv $file_name `echo ${file_name//_test/}`;done

相关推荐
苏州邦恩精密10 分钟前
2026江苏GOM三维扫描仪定制厂家找哪家?企业数字化转型视角
人工智能·机器学习·3d·自动化·制造
AOwhisky12 分钟前
Redis 学习笔记(第四期):高可用与集群(哨兵 + Cluster + 容器化)
linux·运维·数据库·redis·笔记·学习·缓存
零陵上将军_xdr12 分钟前
Shell脚本入门:从Hello World到变量的灵活运用
linux
C语言小火车42 分钟前
嵌入式Linux应用开发技术栈完全指南
linux·运维·服务器
2501_912784082 小时前
Taocarts深度解析:1688自动代采模块的Puppeteer自动化实战
运维·自动化
Dola_Zou2 小时前
边缘智能的“黑暗森林”:工业 AI 模型下沉的资产防护与变现密码
人工智能·安全·自动化·软件工程·软件加密
天南散修2 小时前
MT7916驱动中802.11转换为802.3
linux·网络·驱动开发·wifi·802.11
MXsoft6182 小时前
**断网续传与本地缓存:弱网环境下的监控数据保障方案**
运维·缓存·自动化
LT10157974442 小时前
2026年UI自动化测试平台选型指南:全界面自动化覆盖方案
运维·ui·自动化
曦尧2 小时前
GitHub - addyosmani/agent-skills:面向 AI 编程智能体的生产级工程技能 · GitHub
ai·自动化