【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 
相关推荐
Run_Teenage19 分钟前
认识ELF格式文件,理解库链接过程
linux·运维·服务器
Leon-zy27 分钟前
【Linux】Linux下手动添加的systemctl服务使用journalctl查看无日志或排版乱
linux·运维·服务器
软件工程小施同学29 分钟前
区块链论文速读 CCF A--TDSC 2025 (3)
运维·服务器·区块链
Q168496451534 分钟前
红帽Linux-监控和管理Linux进程
linux·运维·服务器
maosheng114638 分钟前
HCIP的OSPF进阶综合实验
linux·运维·服务器
开开心心就好41 分钟前
内存清理工具开源免费,自动优化清理项
linux·运维·服务器·python·django·pdf·1024程序员节
fy zs1 小时前
NAT ,代理服务器和内网穿透:内网设备通信的底层逻辑
linux·运维·服务器
杨江1 小时前
onlyoffice的安装
运维
Gofarlic_OMS1 小时前
如何将MATLAB网络并发许可证闲置率降至10%以下
大数据·运维·服务器·开发语言·人工智能·matlab·制造
佑白雪乐1 小时前
<Linux基础第3集>清华镜像源配置+网络基础概念理解(IP地址+网卡+网关+子网掩码+DNS...)
linux·网络·tcp/ip