【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 小时前
IDV云桌面vDisk机房网络管控访问限制部署方案
运维·服务器·网络
ShineWinsu15 小时前
对于Linux:动静态库的制作与原理的解析—下
linux·运维·服务器·进程·链接·虚拟地址空间·
RH23121116 小时前
2026.4.16Linux 管道
java·linux·服务器
handler0116 小时前
Linux: 基本指令知识点(2)
linux·服务器·c语言·c++·笔记·学习
Web极客码17 小时前
深入了解WordPress网站访客意图
服务器·前端·wordpress
liuyukuan17 小时前
如何在win11上打开 WSL2(Windows 的 Linux 子系统)?
linux·windows
KKKlucifer17 小时前
国内堡垒机如何打通云网运维安全一体化
运维·安全
橙子也要努力变强17 小时前
Linux信号机制
linux·服务器·网络
shughui17 小时前
FinalShell / Xshell 完整教程(下载+安装+使用,2026最新版)
linux·fiddler·xshell·xftp·finalshell·远程连接工具
wydd99_lll17 小时前
docker特权模式下逃逸
运维·docker·容器