shell脚本的调试sh-x】的更多相关文章

编程中必不可少的一点就是调试,Shell脚本以其强大的功能令人向往,当然,它的强大之处不只是体现在语言的实现功能上,更强大的是它的调试功能,下面,我将以实例讲解Shell脚本的调试技术. 下面是我所用到的实例: #!/bin/bash LINE="Tests run: 196, Failures: 1, Errors: 1" error=`echo $LINE|cut -d':' -f4` echo $error ERROR=0 ERROR=$(($error+$ERROR)) ech…
Shell脚本的调试方法 Shell提供了一些用于调试脚本的选项,如下所示: -n    读一遍脚本中的命令但不执行,用于检查脚本中的语法错误 -v    一边执行脚本,一边将执行过的脚本命令打印到标准错误输出 -x    提供跟踪执行信息,将执行的每一条命令和结果依次打印出来 使用这些选项有三种方法: 一是在命令行提供参数 $ sh -x ./script.sh 二是在脚本开头提供参数 #! /bin/sh -x  第三种方法是在脚本中用set命令启用或禁用参数 #! /bin/sh if […
shell是Linux系统上常用的一种脚本语言.一般从事web后台开发的从业者,都会用到shell,因此shell调试也是一项必备的技能.本文教你如何进行shell脚本调试. 工具/原料   Linux操作系统 ssh工具(SecureCRT) 方法/步骤     启动Linux系统,用ssh工具(xshell或者SecureCRT等)连上Linux系统.我用的是SecureCRT,若SecureCRT不会用,可以自己百度或者留言沟通.用SecureCRT连上之后,如图所示.   shell脚本…
曾经我刚开始学习 shell 脚本时,除了知道用 echo 输出一些信息外,并不知道其他方法,仅仅依赖 echo 来查找错误,比较难调试且过程繁琐.效率低下.本文介绍下我常用的一些 shell 脚本调试方法,希望能对 shell 的初学者有所帮助. sh 命令调试选项(推荐) 选项 说明 -c 从-c后的字符串中读取命令. -n 检查是否存在语法错误,但不会实际执行. -x 将执行的每一条命令和结果依次打印出来. -v 执行过的脚本命令打印到标准输出. 使用方法: 字符串读取脚本. $ sh -…
转至:https://blog.csdn.net/yjgithub/article/details/80908079 目录 一.简介 二.sh -x 脚本名.sh 三.set -x 一.简介 使用sh -x调试shell脚本 "-x"选项可用来跟踪脚本的执行,是调试shell脚本的强有力工具."-x"选项使shell在执行脚本的过程中把它实际执行的每一个命令行显示出来,并且在行首显示一个"+"号. "+"号后面显示的是经过了变…
请参考文章:http://www.ibm.com/developerworks/cn/linux/l-cn-shell-debug/index.html 读后的感觉,还是用shell的选项灵活,方便. trap方式在捕捉ERR信号的时候比较方便. shell的执行选项 -n: 只是读取脚本,但不执行命令.用于在执行脚本前确认脚本中是否存在语法错误. -c:选项使shell解释器从一个字符串中而不是从一个文件中读取并执行shell命令.当需要临时测试一小段脚本的执行结果时,可以使用这个选项. -x…
因为今天写了个小脚本,死活不成功,总是报文件或者目录不存在,问了一下我们马同学的正常写法,发现只有脚本头的区别,也就是今天本文要讲的#!/bin/sh与#!/bin/bash. 本文参考:https://www.cnblogs.com/aaronLinux/p/6885288.html和http://www.cnblogs.com/baizhantang/archive/2012/09/11/2680453.html 一:解释 #!/bin/sh是指此脚本使用/bin/sh来解释执行,#!是特殊…
1. shell脚本编程的基本过程 (1)建立shell文件,以 .sh 结尾的文件 (2)赋予shell文件执行权限,chmod 0777 文件名 (3)执行shell文件, ./ 文件名 或者bash 文件名 2. shell变量 (1)注意:shell中,赋值前后不能加空格 A = 100 × A=100 √ $A 取变量A的值 (2)shell变量的分类 用户自定义变量 位置变量即命令行参数 $0 ~ $9 $# 包含命令行参数的个数 $@ 包含所有命令行参数 $* 包含所有命令行参数…
第一种方式===> [root@localhost functions]# sh -x test.sh --check xx+ '[' --check '!=' -check ']'+ case $1 in+ base=xx+ gotbase=yes+ shift 2+ '[' '' '!=' '' ']' 第二种方式===>[root@localhost functions]# bash -vx test.sh -----  |lesswhile [ "$1" != &q…
bash -x file.sh 这样会把执行到的语句全部打印出来 #!/bin/bash 不会打印的程序块 set -v 需要打印的程序块 set -v 不会打印的程序块…