Команда echo представляет собой удобный способ вывода сообщений на экран или в лог-файл в процессе выполнения командных скриптов.
В обычном режиме, команда echo всегда выполняет перевод строки после вывода текста на экран:
Чтобы после выполнения команды echo перевод строки не выполнялся, необходимо использовать параметр -n:
echo -n "Привет, Петрович!"
Вывод команды echo без новой строки
В качестве примера рассмотрим цикл for в скрипте терминала, который выводит на экран содержимое массива
bash_array=(1 3 6 9)
for i in ${bash_array[@]}; do echo $i;
done
Иногда требуется напечатать результаты вывода несколько команд echo на одной строке.
Параметр -n команды echo
Стандартная реализация bash помещает в конце выходных данных символ "\n". "\n" - это экранирующий символ, который дает команду переместить каретку на новую строку.
Положим мы имеем массив содержащий цифры 3 4 5 6 7 8
bash_array =( 3 4 5 6 7 8)
for i in ${bash_array[@]} do echo -n $i
done
Команда выведет
3 4 5 6 7 8 > приглашение командной строки
Как мы видим, теперь все цифры напечатаны в одной строке терминала, а значит перевод строки при каждом выводе команды echo не производится.