Команда «echo» всегда добавляет новую строку, когда вы запускаете ее в командной консоли. Это удобно, когда вы хотите распечатать переменные окружения и другую информацию. Он разделяет отдельные фрагменты информации в команде и позволяет легко идентифицировать.
Но если вы хотите скопировать вывод и использовать его в другой консоли, дополнительная строка может быть проблемой. Также, если вам нужно использовать команду echo, но вы хотите создать CSV-файл, невидимая строка может сделать ваши усилия тщетными.
В этой статье объясняется, как использовать команду «echo» без создания новой строки для разных платформ.
Как эхо без новой строки в командной строке Windows
Если у вас Windows 10, вы можете получить доступ к командной строке для ввода своих команд. Существуют способы, при которых новая строка может вызвать проблемы, особенно если вы хотите скопировать вывод и использовать его вне командной строки.
Итак, если вы введете «echo 1» в качестве команды в вашем приглашении, вы получите 1 в качестве вывода, за которым следует новая строка и еще одна строка ввода.
Но если вы хотите использовать ту же команду без добавления новой строки, вам нужно ввести дополнительные команды после «echo».
Давайте рассмотрим это шаг за шагом:
- Нажмите одновременно клавиши «Windows» и «R», чтобы открыть окно «Выполнить».
- Введите «cmd» в поле «Открыть».
- Введите следующую команду в командной строке:
эхо | set / p = ваш текст или переменная (в данном примере это «1») - Нажмите «Enter», чтобы выполнить эту команду.
- Вы не должны видеть новую линию между ними.
Если вы хотите скопировать вывод в буфер обмена, вам придется использовать команду «echo» с командой «clip». - Используйте следующий код:
эхо | set / p = ваш текст или переменная | clip - Команда «clip» скопирует текст или переменную в буфер обмена.
- Откройте любой текстовый инструмент. Например, Блокнот.
- Вставьте в него буфер обмена.
- Вы должны увидеть свой вывод в виде строки текста в блокноте.
Как эхо без перевода строки в Bash
Bash — это командная консоль в Linux и Mac OS, которая также распознает команду «echo». В случае Bash, echo также создает новую строку в выводе, но вы можете использовать различные шаги, чтобы остановить ее.
Лучший способ удалить новую строку — добавить «-n». Это сигнализирует не добавлять новую строку.
Если вы хотите написать более сложные команды или отсортировать все в одной строке, вы должны использовать опцию «-n».
Например, если вы введете код:
для х в $ {массив [@]}
делать
эхо $ х
сделано | Сортировать
Команда «echo $ x» отсортирует переменные в отдельные строки. Это может выглядеть примерно так:
1
2
3
4
5
Таким образом, он не будет печатать числа в одной строке.
Есть способ отобразить вывод в одной строке; вам нужно только использовать команду «-n».
Это будет выглядеть так:
для х в $ {массив [@]}
делать
эхо -n $ х
сделано | Сортировать
Нажмите return, и вы должны увидеть числа в одной строке.
Эхо с командой Printf в Bash
Другой способ избежать добавления новой строки с помощью «echo» — это объединить ее с командой «printf».
Например, давайте использовать следующий код:
NewLine = `printf“ \ n ”`
echo -e «Line1 $ {NewLine} Line2»
Не добавляя пробел после «\ n», вы получите такой результат:
Line1Line2
Однако, если вы добавите пробел после «\ n» следующим образом:
NewLine = `printf“ \ n “`
echo -e «Line1 {NewLine} Line2»
Вы получите следующий результат:
Строка 1
Line2
Если по какой-то причине вы хотите, чтобы все ваши данные печатались в одной строке, вы всегда можете использовать первый пример.
А как насчет PowerShell?
Windows PowerShell не создает символ новой строки с помощью команды echo. Но если вы хотите добавить содержимое непосредственно в текстовый файл через PowerShell, вам следует ввести команду «-NoNewline» после текста или переменной.
Это чрезвычайно полезно, например, для создания файла CSV. Или, если по какой-то причине вам нужно, чтобы все ваши переменные оставались в одной строке.
Обратите внимание, что без команды «-NoNewLine» он все равно автоматически переместится на новую строку после достижения конца строки.
Эхо Тора
Теперь, когда вы знаете, как избежать добавления новой строки с помощью echo, вы можете продолжить кодирование.
Если вы знаете о других методах достижения, не забудьте поделиться с сообществом в комментариях. Спасибо заранее.