Ввод сценария оболочки - PullRequest
       1

Ввод сценария оболочки

1 голос
/ 03 августа 2011
#!/bin/sh 

if test -n $1  
then  
  echo "Some input entered"  
  echo $1  
else  
  echo "no input entered"  
fi

В приведенном выше коде должно быть сказано "нет ввода", если я не передал аргумент скрипту оболочки.echo $ 1 показывает пустую строку, когда я не передаю никаких аргументов.говорят, что «введен некоторый ввод» даже без каких-либо аргументов.

Ответы [ 2 ]

5 голосов
/ 03 августа 2011

ставьте кавычки вокруг вашего $1.Без них $ 1 просто исчезает и test смущенно сообщает, что «ничто» не пусто.

if test -n "$1" 
then
    ....
1 голос
/ 03 августа 2011

Пропустить test и поставить кавычки вокруг $1:

#!/bin/sh 

if [ -n "$1" ]
then  
  echo "Some input entered"  
  echo $1  
else  
  echo "no input entered"  
fi
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...