2018-10-11 bash脚本检查输入参数并设置默认参数要注意的

  1. 之前的写法:

     function ip1locate(){ 
       [ "$1" ] && infile=$1 || cd /e/FromG/QQFiles/ && infile=ip_pure.txt
       [ "$2" ] && outfile=$2 || cd /e/FromG/QQFiles/ && outfile=rs_locate.txt
    
  2. 测试时发现,坑了!,指定了输入输出文件位置,结果用的还是默认文件!!

当时着急,要气死了。

  1. 处理完事情后,再测试一次发现果然是上面的写法就是有问题!!

     function bashtest(){ 
     [ "$1" ] && infile=$1 || (cd /e/FromG/QQFiles/ && infile=ip_pure.txt)
     [ "$2" ] && outfile=$2 || (cd /e/FromG/QQFiles/ && outfile=rs_locate.txt)
     echo $infile ,$outfile
     }
    

这样写才解决问题

所以一定要注意||,&&连续写超过两次时,很容易忽略真正的执行过程,使用小括号直观且安全。

你可能感兴趣的:(2018-10-11 bash脚本检查输入参数并设置默认参数要注意的)