Стандартная процедура замены учетной записи пользователя на другую

Вам определенно понадобится подстановка процесса, если ваш скрипт продолжает работу после цикла и хочет обработать ${line}.

Уберите точку с запятой и поместите перенаправление ввода между doneи подстановкой процесса:

done < <( echo "foo\n"; exit )

Обратите внимание, что вам не нужно явно указывать exitдля прекращения выполнения подстановки процесса.

Однако для обработки текстовых файлов обычно намного лучше и безопаснее использовать sedили awk, которые также дают гораздо лучшую производительность. Если вам действительно необходимо использовать Bash для обработки текстовых строк, обычно очень рекомендуется делать это как в:(показывая только первую строку цикла)

while IFS= read -r line ; do

если вы действительно не знаете, что вам нужно иначе.

Это требуется для необработанной обработки входных строк, содержащих пробелы, новые строки и обратную косую черту, которые в противном случае Bash будет анализировать, сжимать и интерпретировать как (соответственно )разделители и escape-символы.

0
31.03.2021, 13:52
0 ответов

Теги

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