【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 
相关推荐
江南风月15 分钟前
3分钟快速上手日志审计系统 WGLOG v2.2 更新了什么
运维·服务器·网络
孙克旭_16 分钟前
Docker 镜像构建|Vue+SpringBoot+Go 多语言项目 Dockerfile 案例
linux·运维·vue.js·spring boot·docker·dockerfile
life码农37 分钟前
Linux截取Nginx指定时间段日志的三种方法(grep/awk/sed)
linux·nginx
接口不宕机1 小时前
外贸公司实战:利用 1688API 自动化监控竞品价格,解决采购定价痛点
运维·自动化
Dawn-bit1 小时前
Linux网络进阶:TCP三次握手和四次挥手与TCP连接状态
linux·服务器·网络·tcp/ip·云计算·智能路由器
旗开得胜马到成功1 小时前
可信备份技术解析:中科热备如何防范备份数据被攻击
运维·服务器
JavaPub-rodert1 小时前
使用 Docker 部署 Ollama:Docker Compose 一键运行 DeepSeek-R1 1.5B
运维·docker·容器
蓝速科技2 小时前
蓝速科技信创落地:平衡安全合规与项目成本的实战方案
android·运维·人工智能·科技·安全·电脑·鸿蒙
TheBestRucy2 小时前
Python 九阳神功:从零筑基到线程飞升
服务器·开发语言·网络·人工智能·python
NJCloud2 小时前
MooseFS 分布式存储部署与高可用架构实践
linux·运维·分布式·架构