shell_脚本开发前期回顾
shell脚本内容回顾
内容回顾
shell执行多行命令:用分号隔开
也可以把复杂的命令执行过程,通过逻辑代码,组成一个脚本文件,再去执行该文件就行
shebang
执行脚本的方式,1. soruce 或点符号执行;2.用解释器sh ;3根据相对路径或者觉得路径去执行。
echo命令,在linux下的格式化打印
echo 和转义符的概念;所谓转义符就是还原原符号;另echo中使用单引号是强引用的意思,原样输出。
变量被引用的时候,会赋予其值,脚本中的变量,在shell执行完毕后,是否会消失,根据执行的方式决定
[root@localhost tmp]# echo $namess
[root@localhost tmp]# sh test01.sh
Mrxu 已经学习了10天
[root@localhost tmp]# echo $namess
[root@localhost tmp]# source test01.sh
Mrxu 已经学习了10天
[root@localhost tmp]# echo $namess
Mrxu
[root@localhost tmp]#
source 和点符号是在当前shell加载脚本,解释器调用脚本是新开启子shell,变量在子shell加载
shell特性;可以从命令执行结果中,再提取结果,因此特别适合编写脚本
- $()
- ``反引号
[root@localhost tmp]# echo "$(date)"
2023年 09月 15日 星期五 16:37:39 CST
[root@localhost tmp]# echo date
date
[root@localhost tmp]#
shell中特殊符号的整理
- ${vars} 取出变量结果
- $vars 取出变量结果
- $() 提取命令执行结果
- `` 提取命令执行结果
- () 开启子shell执行
[root@localhost tmp]# date
2023年 09月 15日 星期五 16:46:40 CST
[root@localhost tmp]# $(date)
bash: 2023年: 未找到命令...
[root@localhost tmp]# echo "$(date)"
2023年 09月 15日 星期五 16:47:11 CST
[root@localhost tmp]#
[root@localhost tmp]# echo $BASH_SUBSHELL
0
[root@localhost tmp]# (pwd;(pwd; echo $BASH_SUBSHELL))
/root/tmp
/root/tmp
2
[root@localhost tmp]#
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!