bash命令检测Shell脚本中的语法错误和查看详细执行过程
(1).bash命令检测Shell脚本中的语法错误
bash -v [脚本]
[root@youxi1 ~]# vim a.sh
#/bin/bash
sum=$[$1+$2]
echoo $sum //故意写错
[root@youxi1 ~]# bash -v a.sh
#/bin/bash
sum=$[$1+$2]
a.sh:行2: +: 语法错误: 期待操作数 (错误符号是 "+") //报错信息
echoo $sum
a.sh:行3: echoo: 未找到命令 //报错信息
(2).bash命令查看Shell脚本详细执行过程
bash -x [脚本]
[root@youxi1 ~]# vim a.sh
#/bin/bash
sum=$[$1+$2]
echo $sum
[root@youxi1 ~]# bash -x a.sh 5 10
+ sum=15
+ echo 15
15
[root@youxi1 ~]# vim a.sh
#/bin/bash
sum=`expr $1 + $2`
echo $sum
[root@youxi1 ~]# bash -x a.sh 5 10
++ expr 5 + 10
+ sum=15
+ echo 15
15
bash命令检测Shell脚本中的语法错误和查看详细执行过程的更多相关文章
- 利用 tee 命令调试shell脚本中的管道
在编写shell脚本时,调试是个比较麻烦的事,特别是涉及到多层管道命令的时候,会产生多个中间结果,tee命令的作用是从标准输入中读取数据写入标准输出或文件中,利用它可以从管道中读取中间结果并写入本地临 ...
- shell脚本中跳转另一台主机执行命令 <<EOF
ssh vmuser@ <<EOFmkdir /home/vmuser/xunjianrm /home/vmuser/xunjian/xj.logtouch /home/vmuser/xu ...
- shell脚本介绍 shell脚本结构和执行 date命令用法 shell脚本中的变量
- centos shell脚本编程2 if 判断 case判断 shell脚本中的循环 for while shell中的函数 break continue test 命令 第三十六节课
centos shell脚本编程2 if 判断 case判断 shell脚本中的循环 for while shell中的函数 break continue test 命令 ...
- shell脚本中常用命令
1 Shell中的特殊符号 1.1 $ 美元符号.用来表示变量的值.如变量NAME的值为Mike,则使用$NAME就可以得到“Mike”这个值. 1.2 ...
- shell脚本介绍、shell脚本结构和执行、date命令用法、shell脚本中的变量
7月11日任务 20.1 shell脚本介绍20.2 shell脚本结构和执行20.3 date命令用法20.4 shell脚本中的变量 20.1 shell脚本介绍 1.shell脚本语言是linu ...
- Linux centosVMware shell脚本介绍、shell脚本结构和执行、date命令用法、shell脚本中的变量
一. shell脚本介绍 shell是一种脚本语言 aming_linux blog.lishiming.net 可以使用逻辑判断.循环等语法 可以自定义函数 shell是系统命令的集合 shell脚 ...
- Shell脚本中实现切换用户并执行命令操作【转】
第一种方法 cat test.sh #!/bin/bashsu - test <<EOFpwd;exit;EOF 执行结果图: 第二种方法 当然也可以用下面的命令来执行 复制代码代码如下: ...
- shell 脚本中所有循环语法
写出 shell 脚本中所有循环语法 for 循环 : for i in $(ls);do echo item:$i done while 循环 : #!/bin/bash COUNTER=0 whi ...
随机推荐
- Android Studio在代码重构中的妙用
代码重构几乎是每个程序员在软件开发中必须要不断去做的事情,以此来不断提高代码的质量.Android Stido(以下简称AS)以其强大的功能,成为当下Android开发工程师最受欢迎的开发工具,也是A ...
- Elasticsearch 概念理解
官方文档地址 Filebeat: https://www.elastic.co/cn/products/beats/filebeat https://www.elastic.co/guide/en/b ...
- python应用-输入三个数,输出其最大值
""" 输入三个数,输出其最大值 Author:罗万财 Date:2017-7-6 """ a=int(input('a=')) b=int ...
- Java批量下载文件并zip打包
客户需求:列表勾选需要的信息,点击批量下载文件的功能.这里分享下我们系统的解决方案:先生成要下载的文件,然后将其进行压缩,生成zip压缩文件,然后使用浏览器的下载功能即可完成批量下载的需求.以下是zi ...
- Ubuntu设置终端操作行为的回收站
Ubuntu设置终端操作行为的回收站(默认情况下,在终端删除文件,会直接删除) 参考自:https://help.aliyun.com/knowledge_detail/41359.html?spm= ...
- mysql关键字--设计表时要避开,否则回报语法错误
https://dev.mysql.com/doc/refman/5.7/en/keywords.html#keywords-in-current-series Keywords and Reserv ...
- scala 学习笔记--闭了个包
object Test01 { def main(args: Array[String]): Unit = { //普通函数 val squ=(x:Int) => x*x // ps:_的简写形 ...
- WinDbg常用命令系列---!findstack
简介 !findstack扩展查找所有包含指定的符号或模块的堆栈.此命令搜索线程调用堆栈中的特定符号,并显示匹配的线程. 使用形式 !findstack Symbol[DisplayLevel] !f ...
- windows下redis的配置文件(redis.windows.conf)
#redis的配置 #Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程 daemonize yes #当Redis以守护进程方式运行时,Redis默认会把pid写入 ...
- Bzoj 4517: [Sdoi2016]排列计数(排列组合)
4517: [Sdoi2016]排列计数 Time Limit: 60 Sec Memory Limit: 128 MB Description 求有多少种长度为 n 的序列 A,满足以下条件: 1 ...