Как скопировать файлы через терминал?

119

Я читал о копировании файлов с терминала, но эти примеры мне очень помогут. Итак, вот что я хочу сделать:

Примеры:

  1. У меня есть файл, /home/levan/kdenlive untitelds.mpgи я хочу скопировать этот файл /media/sda3/SkyDriveи не хочу удалять что-либо в каталоге SkyDrive.

  2. У меня есть файл, /media/sda3/SkyDrive untitelds.mpgи я хочу скопировать этот файл /home/levan/kdenlive и не хочу удалять что-либо в каталоге kdenlive

  3. Я хочу скопировать папку из домашнего каталога в sda3и не хочу удалять что-либо в sda3каталоге и наоборот

  4. Я хочу вырезать папку / файл и скопировать в другое место, не удаляя файлы в том каталоге, в который я его вырезал.

Леван
источник

Ответы:

163

1) При использовании -iдля интерактивного вам будет предложено, если вы хотите заменить файл:

cp -i /home/levan/kdenlive/untitelds.mpg /media/sda3/SkyDrive/

или вы можете использовать -bдля создания резервной копии вашего файла:

cp -b /home/levan/kdenlive/untitelds.mpg /media/sda3/SkyDrive



2) То же, что и выше:

cp (-i or -b) /media/sda3/SkyDrive/untitelds.mpg /home/levan/kdenlive



3) Используйте -Rдля рекурсивного и -iинтерактивного:

cp -Ri ~/MyFolder /sda3/



4) Последнее можно сделать с помощью mvкоманды, перемещение похоже на резку:

mv -i ~/MyFile ~/OtherFolder/MyFile

если вы хотите переместить каталог, используйте:

mv -Ri ~/MyDirectory ~/OtherDirectory/
Эвандро Сильва
источник
Аккуратная подсветка синтаксиса! Не уверен, как ты это вызвал.
Кристофер Кайл Хортон
@ WarriorIng64 вы можете использовать четыре пробела для блоков кода, или вы можете окружать небольшие кусочки кода `s.
Эвандро Сильва
@ EvandroSilva я знаю. Я имел в виду тот факт, что часть вашего кода показана синим цветом.
Кристофер Кайл Хортон
3
@ WarriorIng64 Это вызвано bashтегом в вопросе. Подсветка будет включена по умолчанию системой. Если вы ответите на вопрос с bashтегом, подсветка будет следовать стилю Bash и так далее.
Анвар
2
@ Анвар Я только что сделал часть поста в Meta, когда увидел твой комментарий. Конечно, я зачислил вас в ответ. :)
Кристофер Кайл Хортон
9

Когда ~/Dropbox/RECENT/ваш текущий каталог:

cp input.txt SORT/

И я хочу скопировать input.txtс другим именем в моем текущем каталоге.

Снова в ~/Dropbox/RECENT/качестве текущего каталога:

cp  input.txt newname.txt

Существующие имена файлов могут быть автоматически заполнены с помощью TAB.

Длинная версия той же команды копирования (когда вас нет ~/Dropbox/RECENT/):

cp /home/$USER/Dropbox/RECENT/input.txt /home/$USER/Dropbox/RECENT/SORT/

Я положил /позади каждого каталога. Если SORTне существует cp, также создаст файл с именем, SORTзаставляя вас думать, что что-то пошло не так. Добавление /будет иметь cpошибку и не скопировать файл.

Rinzwind
источник
4

Используйте cpкоманду.

Копирование файла something.txtв файл folder: используйтеcp something.txt folder/

Копирование файла something.txtв текущий каталог как something2.txt: usecp something.txt something2.txt

ubuntu@ubuntu-T100TA:~/TestFolder$ ls -l
total 8
drwxrwxr-x 2 ubuntu ubuntu 4096 Mar 12 21:53 Folder1
-rw-rw-r-- 1 ubuntu ubuntu   14 Mar 12 21:52 something.txt
ubuntu@ubuntu-T100TA:~/TestFolder$ ls -l Folder1/
total 4
-rw-rw-r-- 1 ubuntu ubuntu 14 Mar 12 21:53 something.txt
ubuntu@ubuntu-T100TA:~/TestFolder$ ls -l
total 8
drwxrwxr-x 2 ubuntu ubuntu 4096 Mar 12 21:54 folder
-rw-rw-r-- 1 ubuntu ubuntu   14 Mar 12 21:52 something.txt
ubuntu@ubuntu-T100TA:~/TestFolder$ ls -l folder/
total 0
ubuntu@ubuntu-T100TA:~/TestFolder$ cp something.txt folder/
ubuntu@ubuntu-T100TA:~/TestFolder$ ls -l folder/
total 4
-rw-rw-r-- 1 ubuntu ubuntu 14 Mar 12 21:55 something.txt
ubuntu@ubuntu-T100TA:~/TestFolder$ cp something.txt something2.txt 
ubuntu@ubuntu-T100TA:~/TestFolder$ ls -l
total 12
drwxrwxr-x 2 ubuntu ubuntu 4096 Mar 12 21:55 folder
-rw-rw-r-- 1 ubuntu ubuntu   14 Mar 12 21:55 something2.txt
-rw-rw-r-- 1 ubuntu ubuntu   14 Mar 12 21:52 something.txt
Святой Престол
источник
2

Вам лучше добавить опцию -a в команду cp, чтобы сохранить файл-datetime, file-stats и т. д .:

cp -a input.txt ./SORT
cp -a input.txt newname.txt
ČMKS
источник
1
rsync -aAXhv /home/levan/kdenlive/untitelds.mpg  /media/sda3/SkyDrive/

Это скопирует untitelds.mpgфайл в каталог SkyDrive, не удаляя ничего

BillV
источник
Я не уверен, почему мой комментарий выделен жирным шрифтом ... не был предназначен.
BillV
Прочитайте справку по форматированию, щелкнув поле ?над ответом в правом верхнем углу.
Sparhawk
0

используйте cpкоманду. Введите man cpс терминала для получения дополнительной информации.

Вишну Н.К.
источник