Оказывается, что это было проблемой с LDAP для домена. Пользователь метки был клонирован от Adam, в результате он закончил с тем же идентификатором группы идентификатора пользователя и т.д. и т.д. Я tar'd содержание корневого каталога метки. Затем уничтоженная метка с ldap сервера и созданный его снова с нуля. Похож все это работает теперь.
Это не echo
поведение. Это - поведение удара. Когда Вы используете echo $x
сформируйтесь удар заставляют следующую команду обрабатывать (обработка ␣
как пространство):
echo␣␣hello
Затем эта команда маркируется, и удар получают два маркера: echo
и hello
таким образом вывод справедлив hello
Когда Вы используете echo "$x"
сформируйтесь затем, удар имеет следующее во входе токенизатора:
echo␣"␣hello"
таким образом это имеет два маркера echo
и ␣hello
, таким образом, вывод отличается.
Причина Вы видите другой вывод, состоит в том потому что echo[1 space]Hello
строка синтаксически равна echo[5 spaces]Hello
. Пробел проигнорирован, и слово 'Hello' рассматривают как аргумент echo
. Первая строка, в он - самая простая форма, является почти таким же, как будто Вы сказали echo "Hello"
. Во второй строке Вы явно включали ведущее пространство как часть аргумента echo
, с echo " Hello"
.
В первой строке Вы передаете 5 символьных строк echo
, и во второй строке Вы передаете 6 символьных строк echo
.
Так, на самом деле, поведение echo
то же в обоих экземплярах, это - просто строка, передаваемая echo
это изменяется.
' whitespace'
или\ whitespace
– Serge 16.10.2012, 15:47echo␣␣helo
”. Википедия упоминает это, поскольку “Unicode также обеспечивает некоторые видимые символы для помогания для пространства когда необходимый – U+2423 | 9251 | поле Open | Control Pictures | ␣”. – manatwork 16.10.2012, 16:08