Создать файл в отсутствующей директории
Допустим, есть некоторая директория root, и есть три варианта:
1) она полностью пустая
2) в ней есть дочерняя пустая директория dir
3) в dir есть файл file.txt
Каким образом из терминала можно (пере-)записать некоторый текст в file.txt в любом из трёх случаев?
(можно переформулировать, нужно что-то типа echo "hello, i'm text" > ./dir/file.txt, но так, чтобы все отсутствующие промежуточные директории создавались вместе с файлом)
Ответы (1 шт):
Автор решения: eri
→ Ссылка
Можно создать функцию которая будет создавать структуру каталогов
function newfile() {
mkdir -p $(dirname $1)
echo $1
}
echo "hello, i'm text" > $(newfile ./dir/file.txt)