так что я знаю, как сделать несколько каталогов одновременно, например ..
mkdir -p tree/{dir1,dir2,dir3}
но как мне сделать каталог и поместить в него файлы одновременно? В конечном итоге я хочу сделать это во многих одновременно.
так что я знаю, как сделать несколько каталогов одновременно, например ..
mkdir -p tree/{dir1,dir2,dir3}
но как мне сделать каталог и поместить в него файлы одновременно? В конечном итоге я хочу сделать это во многих одновременно.
Для этого не существует единой команды, но вы можете создать свою собственную:
mkpath(){ mkdir -p ${1%/*} && mkfile 0 $1; }
который может быть вызван с одним аргументом, указывающим путь к файлу, который будет создан. Будут созданы любые каталоги, которые необходимо создать по пути, после чего будет создан пустой файл с указанным именем файла, например
mkpath dir1/dir2/dir3/file.txt
Примечание. Это примерная функция, которая не была тщательно протестирована для учета различных факторов и ситуаций.Для обеспечения устойчивости может потребоваться подходящее отслеживание ошибок.
Поскольку он наследует функции своих компонентных функций, mkdir
и mkfile
, две важные характеристики переносятся на mkpath
в его нынешнем виде: