Я хочу скопіювати каталог з одного місця в інше за допомогою командного рядка


126

Я хочу скопіювати каталог з одного місця в іншу папку.

sudo cpце команда, але після цього, що я повинен набрати? Спочатку призначення або джерело?


10
Чи man cpдопомагає?
Portablejim

Відповіді:


197

-aПрапор, ймовірно , що ви шукаєте:

cp -a /path/from /path/to

-aПрапор включається рекурсивної поведінку (яке також може бути зроблено з -Rпрапором), а також буде намагатися зберегти метадані , такі як права власності файлу, права доступу, часові мітки, посилання і т.д.

Вам слід користуватися лише в тому sudoвипадку, якщо ви копіюєте в місце, яке не належить поточному користувачеві, якщо поточний користувач не має дозволу для читання файлів, що копіюються, або якщо ви хочете зберегти право власності на файли, які не належать поточному користувач.


4
крім того, як правило, це завжди так [command] [source] [destination]. Це відноситься і до mv, cp, ren.
Vineet Menon

1
@VineetMenon Ви, мабуть, маєте на увазі mv, ні ren.
jcollado

@jcollado: я вже додав mv!!
Vineet Menon

@VineetMenon Так, ви праві, я не бачив, що mvвже було в списку. У будь-якому разі, моя думка полягала в тому, що, наскільки я знаю, немає жодної renкоманди (якщо ви не маєте псевдонім чи щось встановлено).
jcollado

1
@jcollado: ха-ха ... це був мій псевдонім для rename...: D
Vineet Menon

28

Якщо ви хочете скопіювати каталог, скористайтеся командою нижче:

sudo cp -R Source_Folder Destination_Folder

Ця команда може бути також використана для копіювання файлів, просто видаливши "-R", який використовується для копіювання рекурсивної структури внутрішніх папок (якщо такі є у вказаному нами шляху Source_Folder).

Ще один приклад:

sudo cp -R /var/www/* /home/test_user/

Будь ласка, не соромтесь залишати коментар у разі будь-якого питання.


7

Для копіювання папки через термінал ви можете використовувати

cp -a /source/. /dest/

Параметр -a - це вдосконалений рекурсивний варіант, який зберігає всі атрибути файлів, а також зберігає символьні посилання.

The. в кінці вихідного шляху - це специфічний синтаксис cp, який дозволяє копіювати всі файли та папки, включаючи приховані.

Замінник - rsync

rsync -r source/ destination

2

Я думаю, що кращий спосіб - використовувати gksu nautilusкоманду, і ви можете скопіювати все, що завгодно, із загального графічного інтерфейсу, як завжди.


1
Це передбачає, що ви використовуєте графічний інтерфейс, а не CLI.
Філл Хелі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.