я посмотрел везде, и я чувствую себя безнадежным
мой файл - это
mkdir -p ~/Desktop/new_file && echo "hello\\world > ~/Desktop/new_file.txt
Я также попробовал
hello\n world
hello ; world
Я пытаюсь выполнить обратный сигнал к своему привет мировому выводу для много предложения строки все от терминала
Страница man для echo
показывает следующее:
DESCRIPTION
Echo the STRING(s) to standard output.
-n do not output the trailing newline
-e enable interpretation of backslash escapes
Это означает, что если вы хотите многострочный вывод, вы просто начнете с echo -e
и добавите \n
для новой строки.
mkdir -p ~/Desktop/new_file && echo -e "hello\nworld" >> ~/Desktop/new_file/new_file.txt
Надеюсь, это поможет!
Если я правильно понимаю ваш вопрос, вы хотите использовать:
echo "hello" > ~/Desktop/new_file.txt && echo "world" >> ~/Desktop/new_file.txt
Затем, чтобы проверить результаты, используйте cat ~/Desktop/new_file.txt
, который показывает:
hello
world
Есть более короткий способ сделать это, но я немного новичок в Linux сам.
Во-первых, хотя Ваш заголовок упоминает touch
, команда, которую Вы на самом деле использовали, mkdir
таким образом, Вы создали названный каталог new_file
. Вы не сможете записать текст в new_file
как есть.
На самом деле нет никакой потребности создать конечный файл на отдельном шаге: перенаправление стандартного вывода команды в именованный файл создаст его автоматически, если это не будет уже существовать. Можно удалить (пустой) new_file
использование каталога rmdir ~/Desktop/new_file
По причинам, обрисованным в общих чертах здесь, Почему printf лучше, чем эхо? Вы могли бы хотеть рассмотреть вместо этого использование
printf 'Hello\nworld\n' > ~/Desktop/new_file
или используйте здесь документ
cat > ~/Desktop/new_file
Hello
world
который позволяет Вам вводить многострочный текст непосредственно, завершая вход с Ctrl+D, когда Вы сделаны.
В любом случае можно заменить >
>>
если Вы хотите добавить к, вместо того, чтобы перезаписать существующее содержание, файл.