【linux】shell脚本调试

前几天的一篇linux定时删除服务器日志 ,有人读了,私信问题。说我写了脚本了,怎么去调试一下,类似于代码的debug。

那我们今天来聊聊。

执行脚本命令是

sh 脚本名

bash 复制代码
sh dele_log2.sh 

执行并输出。

Shell 脚本调试选项

-v(verbose )

告诉 Shell 读取脚本时显示所有行,激活详细模式。

其实就是当命令进行读取时显示输入。

sh -v 脚本名

bash 复制代码
sh -v dele_log2.sh 

在脚本内部增加 set -v

执行sh dele_log2.sh ,和上面的sh -v dele_log2.sh 一样的效果

+v:禁止打印输入
bash 复制代码
 sh +v dele_log2.sh 
-n(noexec 或 no ecxecution)
  • 指示 Shell 读取所有命令然而不执行它们,这个选项激活语法检查模式。

sh -n 脚本名

bash 复制代码
sh -n dele_log2.sh 
-x(xtrace 或 execution trace )

告诉 Shell 在终端显示所有执行的命令和它们的参数。 这个选项是启用 Shell 跟踪模式。

sh -x 脚本名
bash 复制代码
sh -x dele_log2.sh 
在脚本内部增加 set -x

执行sh dele_log2.sh ,和上面的sh -x dele_log2.sh 一样的效果

+x:禁止调试。
bash 复制代码
 sh +x dele_log2.sh 
相关推荐
小诗懂技术10 分钟前
【网络通信UDP】基础 进程间不同主机的通信
运维·服务器·网络
weixin_4407305010 分钟前
selenium实战记录-从登陆-首页-进入应用流程用例三种参数化+日志+报告
服务器·selenium·测试工具
名字还没想好☜20 分钟前
Docker 容器安全加固实战:非 root、只读根文件系统、drop capabilities 与最小攻击面
运维·安全·docker·容器·kubernetes
琥珀色糖41 分钟前
Linux守护进程
linux·终端·守护进程·会话·进程组
鹤落晴春1 小时前
有状态应用 vs 无状态应用
运维·云原生·k8s
Hstar_chen1 小时前
开源一款 HarmonyOS 服务器监控客户端:星辰云巡 1.0.3
服务器·华为·harmonyos
starzy19903 小时前
虚拟化解决方案全景:软件虚拟化、硬件虚拟化与 Docker 的位置
运维·docker·容器
Neighbor_OldY3 小时前
云上安全配置审计与误配置修复实战:从安全组、OSS、RAM到数据库的全栈排查复盘
大数据·运维·安全·云计算
开心大爆炸4 小时前
xrdp 连接 登录对话框输入密码后闪退
linux·运维·服务器
oushaojun25 小时前
大厂 C++ 面试:深度剖析 Linux Signal 信号机制(转)
linux