【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 
相关推荐
青禾8371 天前
Linux 操作系统入门指南:从目录结构到常用命令
linux·运维·服务器
zhengqweasd1 天前
流量没跑满、带宽空闲,业务依然卡顿
运维·服务器·网络
闖641 天前
入门Linux操作系统|零基础吃透原理、目录、权限、常用命令
linux
bruk_spp1 天前
linux pinctrl
linux
M哥支付1 天前
高频交易优选方案:银联快捷支付通道
服务器·网络·其他·微信·金融
Y3815326621 天前
Docker Compose 服务依赖与健康检查:healthcheck 让容器按正确顺序启动
运维·docker·容器
稳联技术老娜1 天前
伺服内嵌EtherNet IP方案:嵌入式小板SPI通讯固件Demo程序适配改造
运维·服务器·网络
en.en..1 天前
Linux系统编程:fcntl 与 ioctl
linux·运维·服务器
自动化监测Learner1 天前
Navicat Premium 17 中文版安装教程(2026最新版)
java·linux·数据库
荣合技术服务1 天前
Codex 实战:用 AI 写运维脚本
运维·codex