linux shell 脚本调试技巧

天翼云开发者社区
• 阅读 207

本文分享自天翼云开发者社区《linux shell 脚本调试技巧》,作者:g****n

1.bash -x 加脚本 这是最常用的调试手段,终端会打印出,脚本执行过程中的每一个命令。 a. 查看脚本流程有无错误 b.查看变量值有无错误 c.查看退出位置是否符合预期 例如脚本 small_test.sh #!/bin/bash echo 1echo 2echo 3 shell中执行
bash -x small_test.sh 执行效果,会打印出,每一行代码的执行细节,类似于gdb的调试。 [root@localhost ~]# bash -x small_test.sh

  • echo 11
  • echo 22
  • echo 33

2.bash一但有任何一个语句返回非真的值,则退出bash set -o errexit 或者写作 set -e 使用方法,直接在脚本中写入 #!/bin/bash #开启检查 set -e #如果cd失败,脚本会退出 cd /dir1 ls -l #关闭检查 set +e 当cd到某个目录删除文件时,能防止cd失败后,误删除。

3.使用未初始化的变量时,让bash自动退出 set -o nounset 或者写作 set -u
使用方法与set -e类似。 以上就是shell调试的一些技巧。

点赞
收藏
评论区
推荐文章
Stella981 Stella981
3年前
Python—执行系统命令的四种方法(os.system、os.popen、commands、subprocess)
一、os.system方法这个方法是直接调用标准C的system()函数,仅仅在一个子终端运行系统命令,而不能获取命令执行后的返回信息。os.system(cmd)的返回值。如果执行成功,那么会返回0,表示命令执行成功。否则,则是执行错误。使用os.system返回值是脚本的退出状态码,该方法在调用完shell脚本后
Wesley13 Wesley13
3年前
Java执行shell脚本并返回结果两种方法的完整代码
Java执行shell脚本并返回结果两种方法的完整代码简单的是直接传入String字符串,这种不能执行echo或者需要调用其他进程的命令(比如调用postfix发送邮件命令就不起作用)执行复杂的shell建议使用String\\方式传递(对外可以封装后也传入String字符串)。/运行shell脚本
Stella981 Stella981
3年前
Linux nohup命令和后台运行符&的使用
文章目录1.nohup的使用2.后台运行符&的使用3.总结1.nohup的使用作用:当你在终端执行命令脚本,当脚本没有执行完,如果你关闭终端,那么跟随这个终端有关的进程都会退出执行,nohup命令的作用就是让使用此命令的脚本可以脱离终端继续执行,不受终端退出的影响。
Stella981 Stella981
3年前
Linux Shell DAY6
shell脚本介绍shell脚本结构和执行date命令用法shell脚本中的变量脚本中的逻辑判断shell脚本介绍shell是什么shell是一种脚本语言可以使用逻辑判断、循环等语法可以自定义函数
Stella981 Stella981
3年前
Linux下shell脚本监控Tomcat的状态并实现自动启动
最近公司需要在Linux下监控tomcat的服务,一旦tomcat服务存在异常或者宕机,重启tomcat保证服务的正常运行,由于Linux下有Shell脚本可以实现此效果,下面是Linux下shell脚本监控Tomcat的状态并实现自动启动的步骤。1.编写Shell脚本monitor.sh!/bin/sh\func:自动监控tomcat脚本
可莉 可莉
3年前
20.1 shell脚本介绍 20.2 shell脚本结构和执行 20.3 date命令用法 20.4 shell脚本中的变量
第二十章shell编程20.1shell介绍shell是一种脚本语言可以使用逻辑判断、循环等语法可自定义函数shell是系统命令的集合shell脚本可以实现自动化运维,能大大增加我们的运维效率20.2shell脚本结构和执行
Stella981 Stella981
3年前
Shell 脚本实现 Linux 系统监控
一、实验介绍1.1实验内容本课程实现shell脚本监控系统的各项参数,并可以将脚本加入系统环境中,可以直接在终端里执行。还添加了几个参数,一个脚本可以执行不同的操作。1.2知识点本实验涵盖以下知识点:1.Bash脚本编程2.如何获取Linux系统信息3.如何实时获取Linux
Stella981 Stella981
3年前
Jmeter28:linux下实现压测
jmeter单机压测命令行模式html报表生成控制台参数优化一/准备工作1.压力机安装并配置好jdk2.调试好程序脚本再上传到linux下3.进入jmeter bin目录执行     chmodx./\  可执行权限二/单机执行步骤执行./jmeter.shnt/expor
Stella981 Stella981
3年前
Linux中编写Bash脚本的10个技巧
Shell脚本编程是你在Linux下学习或练习编程的最简单的方式。尤其对系统管理员要处理着自动化任务,且要开发新的简单的实用程序或工具等(这里只是仅举几例)更是必备技能。本文中,我们将分享10个写出高效可靠的bash脚本的实用技巧,它们包括:1、脚本中多写注释这是不仅可应用于shell脚本程序中,也可用在其他所有类
Stella981 Stella981
3年前
Shell 特殊变量
shell编程中有一些特殊的变量可以使用。这些变量在脚本中可以作为全局变量来使用。名称说明$0执行脚本的名称$19脚本执行时的参数1到参数9$?脚本的返回值,代表上一个命令是否执行成功,如果成功,则为0,否则不成功$!代表最后执行的后台命令的PID    $脚本执行时,输入的参数的个数$@输入的参数
天翼云开发者社区
天翼云开发者社区
Lv1
天翼云是中国电信倾力打造的云服务品牌,致力于成为领先的云计算服务提供商。提供云主机、CDN、云电脑、大数据及AI等全线产品和场景化解决方案。
文章
696
粉丝
15
获赞
40