Я новичок в Bash, и я вижу, что есть автоматическое разбиение слов осуществляются Bash:Баша слова Расщепление механизм
a="1 2 3 4"
Если я эхо «а» на echo $a
я 1 2 3 4
, который сделал слово расщепления неявно. Если я прохожу через «a», я получил 1, 2, 3 и 4 соответственно.
Я также читать из here, что
Оболочка сканирует результаты расширения параметров, команда замены, и арифметическое расширения, которое не происходило в течение двойных кавычек для слова расщепления.
И я также обнаружил, что если у меня есть
b=$a;
echo "$b"
Я хотел бы получить
"1 2 3 4"
Итак, вот моя проблема: когда слово расщепление сделано? он сам меняет строку? Используется ли это только тогда, когда я использую echo
или for
(цикл)? Более общий, как баш справляется с этим на земле?
Большое спасибо!
Большое спасибо! Но делает ли bash слово разбиение по вызову, а не только один раз? Я имею в виду, что Баш всегда выполняет расщепление всякий раз, когда он считает необходимым, но не просто сделать это в первый раз, а затем сохранить его? Если он много раз делится на одну строку, я думаю, что эффективность не очень хорошо рассмотрена? – dragonxlwang