- bash/sh -n :校验脚本是否存在语法问题
测试脚本,sh-error.sh
#!/bin/bash
e = 1
a=abc
if [[ $a ]]then
echo 123
使用 sh -n 测试脚本语法错误
[root@origin sh]# sh -n sh-error.sh
sh-error.sh: line 4: conditional binary operator expected
sh-error.sh: line 4: syntax error near `]]then'
sh-error.sh: line 4: `if [[ $a ]]then'
可以看到那几行有语法错误;如果测试的脚本没有语法错误,则不输出信息。
- bash/sh -vx :显示脚本执行过程
测试脚本
num=12
if [[ ${num} -lt 10 ]]
then echo "num 小于 10"
else echo "num 不小于 10"
fi
使用 sh -vx 测试脚本执行过程
[root@origin sh]# sh -vx if-else.sh
num=12
+ num=12
if [[ ${num} -lt 10 ]]
then echo "num 小于 10"
else echo "num 不小于 10"
fi
+ [[ 12 -lt 10 ]]
+ echo 'num 不小于 10'
num 不小于 10
文章展示了如何使用`sh-n`命令检测bash脚本的语法错误,例如在`sh-error.sh`中指出的条件二进制运算符预期错误。另一方面,通过`sh-vx`命令可以详细查看脚本`if-else.sh`的执行过程,包括变量赋值和条件判断等步骤。
693

被折叠的 条评论
为什么被折叠?



