Unix bash脚本编写和使用test-z脚本
因此,我用以下代码编写了一个名为MYSCRIPT的脚本:Unix bash脚本编写和使用test-z脚本,unix,if-statement,scripting,sh,Unix,If Statement,Scripting,Sh,因此,我用以下代码编写了一个名为MYSCRIPT的脚本: if test -z $1 ; then echo "rm: missing operand" echo "'try rm --help'" for more information. fi 根据我的理解,它的意思是:“如果$1参数不存在,那么echo:“rm:缺少操作数” 但是,如果键入“sh MYSCRIPT-i”,那么它仍然会重复此操作。当然$1参数现在等于某个值(它是-i),因此它应该运行?这是一种方法,但可能不是检查给
if test -z $1 ; then
echo "rm: missing operand"
echo "'try rm --help'" for more information.
fi
根据我的理解,它的意思是:“如果$1参数不存在,那么echo:“rm:缺少操作数”
但是,如果键入“sh MYSCRIPT-i”,那么它仍然会重复此操作。当然$1参数现在等于某个值(它是-i),因此它应该运行?这是一种方法,但可能不是检查给定参数是否为空的最佳方法 我建议您使用这样的方法,计算给定参数的数量:
#!/bin/bash
[ $# -eq 0 ] && echo "no arguments given" && exit
echo "$1 is the input"
试验
$ ./test
no arguments given
$ ./test a
a is the input