Я плохо знаком с командной строкой Linux и пытаюсь справиться с командой копии в данный момент.
Кто-либо может сказать мне, если возможно скопировать каталог со своими подкаталогами и связанными файлами к новому каталогу с новым именем, например, directory_backup?
Спасибо за любого и всю справку заранее
Команда, в которой Вы нуждаетесь, просто cp
, который обозначает "копию".
можно использовать его, например, с одним из этих синтаксисов:
cp SOURCEFILE TARGETFILE
cp SOURCEFILE TARGETDIRECTORY
первый вариант позволяет Вам указывать новое имя файла для конечного файла, в то время как второй вариант создает копию с тем же именем в целевом каталоге. Необходимо, конечно, заменить заполнителями в прописных буквах с допустимыми путями сначала.
Однако cp
по умолчанию воздействует на файлы только, не на каталоги. Чтобы заставить это копировать полный список со всем своим содержанием рекурсивно, необходимо добавить -r
опция:
cp -r SOURCEDIRECTORY TARGETDIRECTORY
можно узнать больше эти cp
команда путем ввода man cp
в терминале.
Как альтернатива обычно полезному CP управляют, чтобы можно было использовать rsync, который обладает дополнительным преимуществом тиражирования полномочий/меток времени исходной структуры каталогов:
rsync -av dir/ newdir
-a архивируют-v подробный
, отмечают наклонную черту после исходного dir
cp
команда, которая делает функцию, которую Вы ищете. Это обозначает копию, и это делает просто это. Команда, которая работала бы на Вас в этой ситуации,
cp -R source/ destination/
, Это скопировало бы source/
папка и все ее подкаталоги к destination/
.
, Если destination/
не существует, это будет создано.
Эти -R
флаг обозначает рекурсивный, который говорит cp
копировать все подкаталоги.
Я нахожу легче измениться на каталог, с которого я копирую сначала. Поскольку этот пример изменяется на каталог, все звонили /boot
. Любой может скопировать и вставить команды ниже в их Терминал.
cd /boot
sudo mkdir /boot_backup
sudo cp -r . /boot_backup
du /boot_backup -h
752K /boot_backup/extlinux/themes/debian-wheezy
756K /boot_backup/extlinux/themes
832K /boot_backup/extlinux
2.5M /boot_backup/grub/i386-pc
20K /boot_backup/grub/locale
2.3M /boot_backup/grub/fonts
7.2M /boot_backup/grub
565M /boot_backup
Для эти cp
управляют, чтобы текущий каталог был идентифицирован как .
, который является /boot
каталог, на который мы изменились. -r
опция делает это рекурсивным для включения всех подкаталогов.
Для обеспечения это работало выполненное du
для списка всех подкаталогов и общих размеров файла в новом каталоге /boot_backup
в этом случае.
После окончания этой пошаговой демонстрации, используйте: sudo rm -r /boot_backup
для удаления нового каталога и это - подкаталоги.
Можно использовать ниже команды для копирования каталога от одного места до другого подкаталога.
cp -Rvp /home/edmuntu/data /home/edmuntu/mydata/
Объяснение команды:
Вы обычно хотите сохранить полномочия файла тем же при создании копии, не нового набора полномочий создания по умолчанию. Это означает использование-a флаг для CP.
cp -a file filenew
Вы используете -r
(скопируйте рекурсивно), и укажите новое имя
cp -r /path/to/directory /path/to/location/new-name
замена реальными путями..., например, для копирования stuff
от моего корневого каталога до существующего каталога backup
и назовите новый каталог stuff-backup
(если этот каталог уже существует, отметьте это stuff
будет скопирован в него, не перезапишет его).
cp -r ~/stuff ~/backup/stuff-backup
~
ярлык для Вашего корневого каталога /home/$USER
или /home/zanna
в моем случае. Можно опустить его, если текущий рабочий каталог является корневым каталогом - Вы видите это от своей подсказки
zanna@monster:~$
^--the ~ here is where I am - home!
Можно добавить -v
подробный флаг для создания cp
сообщите о каждой выполняемой копии...
$ cp -vr stuff backup/stuff-backup
'stuff/thing1' -> 'backup/stuff-backup/thing1'
'stuff/thing2' -> 'backup/stuff-backup/thing2
...