Поясніть, будь ласка, чому відображається 1 4 5 6 для останніх чотирьох ехо-заяв? Я потрапив це випадково один раз, але мені зараз цікаво, чому така поведінка трапляється.
Ці твердження працюють, як і очікувалося (для мене).
$ echo [ 9876543210 ]
[ 9876543210 ]
$ echo [237890]
[237890]
Ці ехо-заяви постійно відображають 1 4 5 6. Чи є щось особливе в цих числах?
$ echo [9876543210]
1 4 5 6
$ echo [abcd9876543210ghi]
1 4 5 6
$ echo [-123456-]
1 4 5 6
$ echo [-7654321-]
1 4 5 6
Спасибі!
- Можливий дублікат пов'язаний і корисний, але не дублікат. Можливий дублікат з точки зору
rm
команди. Це питання з точки зору сприйнятої "дивної поведінки"echo
команди. Основна відповідь для обох - глобалізація. Хтось, хто шукає проблеми зecho
командою, не зможе легко знайти цеrm
питання, але скоріше за все тут.
nullglob
, ваш другий приклад ( echo [237890]
) насправді нічого не надрукує, що могло б бути підказкою, що ви бачили глобальне розширення в інших прикладах.
1
4
5
і6