Команда для перемещения файла в каталог, даже если каталог отсутствует

Aug 21 2020

Есть ли способ переместить файл в новый каталог без явного создания каталога с помощью mkdirкоманды, а затем переместить файл с помощьюmv

Ответы

2 Rinzwind Aug 21 2020 at 00:02

Традиционный метод был бы

mkdir -p

создаст все элементы пути, которые не существуют.

Вы можете изменить это с помощью && mvпримера:

mkdir -p /tmp/1/2/3/ && mv /tmp/file /tmp/1/2/3/

/ Tmp / 1/2/3 / может быть переменной, которую вы можете использовать повторно.

Это также можно сделать, tarно тогда вам нужно сделать это с уже существующей структурой каталогов. Разъединение в другом месте создаст несуществующие пути.

Вы также можете использовать rsync. Если пункт назначения не существует, он создаст его для вас. пример

rsync -a --relative /new/dir/1/2/3/ /old/dir/

Последний вариант мне кажется лучшим. rsync - отличный инструмент для передачи файлов. Местный и удаленный.