На этот вопрос уже есть ответ здесь:
И снова здравствуйте, пользователи Ubuntu
Я пробую кое-что новое с mkdir и не могу понять
Я хочу узнать, как создать каталог внутри указанного пути, а затем текстовый документ touch.txt со словами внутри или story
Пока у меня есть
mkdir ~/Desktop/new_file touch ~/Desktop/new_file/adas.txt
Но это не работает, и я не знаю, как получить все слова из одной командной строки
Это могло быть сделано этот путь:
mkdir ~/Desktop/new_file && touch ~/Desktop/new_file/adas.txt && echo "Hello World" > ~/Desktop/new_file/adas.txt
информация:
&&
Это гарантирует, что команда, предшествующая ему, выполняется правильно перед следующей командой, следовательно если предыдущая команда приводит следующее к сбою, не выполнится.
>
Направляет вывод команды эха в adas.txt
файл.
Вы могли бы рассмотреть использование mkdir --parents
(или mkdir -p
если коротко) для предотвращения ошибки, если каталог уже существует (можно также создать вложенные каталоги этот путь, например, mkdir -p dir1/dir2/dir3
создаст требуемые каталоги и не бросит ошибку, если они уже будут существовать).
Можно также хотеть рассмотреть исключение touch
управляйте полностью как >
создаст файл для Вас, если он не будет уже существовать (к вашему сведению: >>
добавит в конец существующего файла, тогда как >
перезапишет существующий файл.
Так,
mkdir -p ~/Desktop/new_file && echo "Hello World" > ~/Desktop/new_file/adas.txt
Должен сделать то, что Вы хотите, затем Вы могли позже сделать вещи как:
echo "More text to add" >> ~/Desktop/new_file
Больше информации может быть найдено в странице справочника удара (man bash
под ГРАММАТИКОЙ SHELL (особенно раздел Lists.
Удачи