Мое понимание "установить -" неверно? - PullRequest
0 голосов
/ 25 января 2012

Я ожидаю

set -- "a b"

, чтобы установить $1 = "a" и $2 = "b", но вместо этого он устанавливает $1 = "a b" и $2 = "", что дает?

Ответы [ 2 ]

3 голосов
/ 25 января 2012

Двойные кавычки указывают, что "a b" следует рассматривать как один параметр. Используйте

set -- a b

рассматривать их как два параметра.

Изменить в ответ на ваш комментарий : Понравилось?

$ a="a b"
$ set -- $a
$ echo $1
a
$ echo $2
b
0 голосов
/ 25 января 2012

Строка в кавычках - это одно слово, поэтому вам просто нужно:

$ set -- "a" "b"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...