Сценарий Bash не работает

[1181731] Просто снимите квадратные скобки со своего PS1 (также была опечатка вокруг [1182161]\t[1182162]):[12187]
1
24.03.2014, 00:45
2 ответа
[112494]Проблема заключается в неправильном цитировании. [113003]"[113004] не цитирует (и, что является проблемой здесь, не удаляется!), если она содержится в переменной. Исключение: [113005]eval $text[12216]Вы должны присвоить параметры массиву и вместо этого использовать [113007]ls "${vars[@]}"[113008] или [113009]ls "$@"[113010].[12217]Сравните два вызова:[12218]
3
27.01.2020, 23:15
[112500]Так кавычки не работают в bash. При вводе[12219]-удаление кавычек происходит по команде, поэтому команда становится[12220]Если, с другой стороны, при установке[12221]и запуске [113011]$text[113012], удаление кавычек не происходит. Смотрите [113013]man bash[113014] в разделе EXPANSIONS:[12222]После предыдущих расширений все нецитируемые вхождения символов \, ' и ", которые не возникли в результате одного из вышеперечисленных расширений, удаляются.[12223]"[113018] здесь возникло расширение параметра, поэтому оно не удаляется.[112511].
3
27.01.2020, 23:15

Теги

Похожие вопросы