Shell脚本输入

das*_*man 1 unix shell

#!/bin/sh 

if test -n $1  
then  
  echo "Some input entered"  
  echo $1  
else  
  echo "no input entered"  
fi
Run Code Online (Sandbox Code Playgroud)

如果我没有将参数传递给shell脚本,上面的代码应该说"没有输入".当我不传递任何参数时,echo $ 1显示一个空行.即使没有任何争论,它也说"输入了一些信息".

evi*_*tto 5

把报价放在你的周围$1.如果没有它们,1美元就会消失,并且test容易混淆地报告"没有"不是空的.

if test -n "$1" 
then
    ....
Run Code Online (Sandbox Code Playgroud)