Утилита XCopy или как скопировать папку в командной строке. Как скопировать файлы в другую папку

Копирование файлов - одна из задач, наиболее часто возникающих перед пользователями персонального компьютера. Конечно, можно открыть файловый менеджер, войти в нужную папку и скопировать файл с помощью контекстного меню - тут не о чем говорить. Но в этой статье я хотел бы рассмотреть копирование файлов в Linux с помощью терминала.

Не всегда есть доступ к файловому менеджеру: из-за различных поломок графическая оболочка на домашнем компьютере может быть недоступна, а на серверах используется только консольный интерфейс. К тому же копирование файлов Ubuntu через терминал намного эффективнее, и вы сами в этом убедитесь. Сегодня мы рассмотрим не только обычное копирование командой cp Linux, но и не совсем обычное: с помощью tar и find .

Название утилиты cp - это сокращение от Copy, что означает копировать. Утилита позволяет полностью копировать файлы и директории.

Синтаксис и опции

Общий синтаксис cp выглядит вот так:

$ cp опции файл-источник файл-приемник

$ cp опции файл-источник директория-приемник/

После выполнения команды файл-источник будет полностью перенесен в файл-приемник. Если в конце указан слэш, файл будет записан в заданную директорию с оригинальным именем.

Утилита имеет несколько интересных опций, которые могут сильно помочь при нестандартных задачах копирования, поэтому давайте их рассмотрим:

  • --attributes-only - не копировать содержимое файла, а только флаги доступа и владельца;
  • -f, --force - перезаписывать существующие файлы;
  • -i, --interactive - спрашивать, нужно ли перезаписывать существующие файлы;
  • -L - копировать не символические ссылки, а то, на что они указывают;
  • -n - не перезаписывать существующие файлы;
  • -P - не следовать символическим ссылкам;
  • -r - копировать папку Linux рекурсивно;
  • -s - не выполнять копирование файлов в Linux, а создавать символические ссылки;
  • -u - скопировать файл, только если он был изменён;
  • -x - не выходить за пределы этой файловой системы;
  • -p - сохранять владельца, временные метки и флаги доступа при копировании;
  • -t - считать файл-приемник директорией и копировать файл-источник в эту директорию.

Примеры копирования файлов в linux

Теперь, когда вы знаете основные опции, можно перейти к практике. Например, мы хотим скопировать некую картинку из домашней папки в подкаталог pictures:

cp ~/pic.png ~/pictures/

Или можем явно указать имя новой картинки:

cp ~/pic.png ~/pictures/wallpaper.png

Копирование папок осуществляется с помощью ключа -r :

cp -R ~/папка ~/Документы/

После выполнения этой команды копирования ~/папка будет скопирована в папку ~/Документы. Главное, не забывайте поставить слэш в конце выражения или использовать опцию -t . Иначе папка ~/документы будет перезаписана.

По умолчанию команда cp Linux перезаписывает существующие файлы или папки, но можно заставить утилиту спрашивать, нужно ли перезаписывать каждый файл, если вы не уверены в правильности составления команды:

cp -i ~/test ~/Documents/test

Есть и противоположная опция -n , означающая "никогда не перезаписывать существующие файлы".

Опция -u полезна в следующем случае: вы знаете или предполагаете, что в директории, куда копируется файл, есть старая его версия, тогда оператор -u выполнит замену на новую версию:

cp -u ~/test ~/Documents/test

Сp также поддерживает специальные символы замены * и ? . Например, следующая команда скопирует все файлы, начинающиеся на test :

cp ~/test* ~/Документы/

Если нужно применить более сложные регулярные выражения, придётся комбинировать утилиту cp с find или egrep .

cp -p ~/test* ~/Документы/

Для упрощения использования команды можно применять синтаксис фигурных скобок. Например, чтобы создать резервную копию файла, выполните:

$ cp test.conf{,.bak}

Будет создан файл с таким же именем и расширением.bak

По умолчанию в cp не отображается , что очень неудобно при работе с большими файлами, но его можно легко посмотреть с помощью утилиты cv .

Копирование файлов по регулярным выражениям в Linux

В утилите find можно применять различные условия и регулярные выражения для поиска файлов. Я уже немного писал о ней в статье . Мы можем скопировать все найденные с помощью find файлы, вызвав для каждого из них команду cp . Например, копируем все файлы в текущей директории, содержащие в имени только цифры:

find . -name -exec cp {} ~/Документы \

Здесь точка указывает на текущую директорию, а параметр name задает регулярное выражение. Параметром exec мы задаем, какую команду нужно выполнить для обнаруженных файлов. Символ {} - подставляет имя каждого файла.

Но не find "ом единым такое делается. То же самое можно получить, запросив список файлов директории в ls , отфильтровав его по регулярному выражению egrep и передав имена файлов по очереди в cp с помощью xargs :

ls -1 ~/ | egrep "" | xargs cp -t ~/Папка/

Это не совсем удобный способ копировать файлы Linux, но всё же он возможен. Будут скопированы все файлы из домашней директории, содержащие в имени только английские буквы.

Копирование содержимого файлов в Linux

Вы можете не только копировать сами файлы, но и управлять их содержимым. Например, склеить несколько файлов в один или разрезать файл на несколько частей. Утилита cat используется для вывода содержимого файла, в комбинации с операторами перенаправления вывода Bash вы можете выполнять копирование содержимого файла Linux в другой файл. Например:

cat файл1 > файл2

Если файл был не пустым, он будет перезаписан. Или мы можем склеить два отдельных файла в один:

cat файл1 файл2 > файл3

Специальное копирование файлов в Linux с помощью tar

Linux интересен тем, что позволяет выполнять одно и то же действие различными путями. Копирование в Linux тоже может быть выполнено не только с помощью cp . При переносе системных файлов в другой каталог, резервном копировании системных файлов и т.д. важно чтобы сохранились атрибуты, значения владельцев файлов и символические ссылки как они есть без какой-либо модификации.

Утилита cp тоже может справиться с такой задачей? если указать опцию -p , но можно использовать утилиту архивации tar . Мы не будем создавать никаких файлов архивов, а построим туннель. Первая часть команды пакует файл и отправляет на стандартный вывод, а другая сразу же распаковывает в нужную папку:

tar cf - /var | (cd /mnt/var && tar xvf -)

Здесь мы полностью копируем содержимое папки /var в папку /mnt/var. Так вы можете копировать папку Linux, причём абсолютно любую или даже целую операционную систему.

Выводы

Теперь вы знаете, как выполняется копирование файлов Ubuntu и в Linux в целом. Как видите, в терминале это выполняется намного быстрее и эффективнее, чем с помощью графического интерфейса, если помнить нужные команды. Если у вас остались вопросы, спрашивайте в комментариях!

У некоторых пользователей, при работе на компьютере, возникает необходимость получить список файлов в папке. Такой список может быть нужен для разных целей: для каталогизации файлов в папках, для сравнения содержимого в папках, для того, чтобы составить список фильмов, музыкальных композиций, электронных книг и т. п.

Во многих случаях, количество файлов может быть очень большим, поэтому вручную составить полный список находящихся в папке файлов будет проблематично. Предположим, в папке на вашем компьютере хранится электронная библиотека, или вы имеете большое собрание фильмов. Даже увлеченному человеку запомнить все содержимое папки или диска будет нереально.

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

Например, у меня на внешних жестких дисках, каждый из которых имеет размер в несколько терабайт, хранится большая коллекция фильмов, которые я собирал несколько лет. Мне, конечно, тяжело запомнить все названия фильмов, которые хранятся на жестких дисках.

Встречая в интернете какой-либо фильм, имея у себя список файлов в папке, я могу легко проверить, есть ли такой фильм у меня в коллекции, или я встретил новый фильм. Поэтому я приступил к поиску решения данного вопроса.

В итоге, я нашел несколько простых вариантов решения этой проблемы. Создать список файлов в папке можно разными способами: при помощи командной строки, при помощи файла, который имеет расширение «.bat», при помощи специальных программ, сохранить список в браузере.

Сохранение списка файлов с помощью командной строки

Вначале вам необходимо будет перейти к нужной папке, или диску, если вы хотите получить список файлов, которые находятся на диске. После открытия папки или диска, удерживая на клавиатуре кнопку «Shift», кликните правой кнопкой мыши внутри этой папки. В открывшемся контекстном меню выберите пункт «Открыть окно команд».

После этого откроется окно консоли, в которой уже будет указан путь к нужной директории (в вашем случае, будет к той папке, которую вы откроете). В этом примере, это папка «Программы» на Рабочем столе моего компьютера. В этой папке находятся другие папки, в которых находятся ярлыки программ.

Dir /b>filelist.txt dir /s>filelist.txt

После ввода «dir» должен быть пробел. Вместо «filelist» может написать свое название файла, только латинскими буквами. Не забудьте в конце добавить формат «.txt».

Эти команды отличаются друг от друга в использовании дополнительных критериев сохранения списка файлов:

  • /b - обозначает, что будут сохранены только имена файлов.
  • /s - обозначает, что дополнительно в список будут включены все файлы и подкаталоги (подпапки), которые находятся в этой папке.

Затем на клавиатуре нажмите на кнопку «Enter».

После этого вы можете открыть папку и увидеть, что в папке находится текстовый файл «filelist». Теперь можете открыть этот файл с помощью Блокнота.

Если в данной папке некоторые файлы имели русские имена, то вместо имен этих файлов, вы увидите непонятные символы (крякозябры). Дело в том, что программа Блокнот не понимает кодировку MS-DOS.

Поэтому, открыть созданный файл, можно будет с помощью программы Word. Предполагаю, что у большинства пользователей, на компьютере установлена данная программа.

Кликните по текстовому файлу правой кнопкой мыши, а затем в контекстном меню выберите пункт «Открыть с помощью». Выберите для открытия файла программу Microsoft Office Word. В окне программы Word будет открыто окно «Преобразование текста», в котором нужно будет выбрать кодировку MS-DOS, которая позволит прочитать этот документ.

На образце вы увидите правильное отображение текста.

После нажатия на кнопку «ОК», данный текст будет открыт в программе Word. Вы можете провести редактирование документа, а потом сохранить его на компьютере в нужном формате, в том числе в формате «TXT». Проблем с кодировкой после сохранения файла уже не будет.

Получение списка файлов в папке с помощью bat файла

Один из самых доступных и простых способов получения списка файлов в папке: использование для этого специального bat файла. Существует несколько вариантов создания файла с расширением «.bat», с разным кодом.
Для создания bat файла вам нужно будет открыть Блокнот, а затем вставить туда этот код:

Chcp 1251 echo %date% %time% >filelist.txt dir /b /d >>filelist.txt

Сохраните этот файл, имя файлу можете дать любое, самому файлу нужно дать расширение «BAT». Параметры сохранения файла в Блокноте будут выглядеть примерно так:

  • Имя файла: filelist.bat
  • Тип файла: Все файлы

Далее помещаете созданный файл в ту папку, из которой вы хотите получить, список находящихся там файлов. После этого, запустите файл с расширением «.bat». В данной папке будет создан файл «filelist» в формате «.txt», в котором будет находиться список файлов.

Существует несколько вариантов содержимого файла с расширением «.bat». При использовании этого метода, проблем с кодировкой не возникнет.

Программа DirLister для получения списка файлов

Вы можете создать список файлов расположенных в папке, при помощи бесплатной программы DirLister. Эта крошечная программа не требует установки на компьютер. После загрузки программы на свой компьютер, распакуйте архив с программой.

DirLister скачать

Для запуска программы, откройте папку с программой, а потом кликните по приложению DirLister.

В окне программы DirLister, в разделе «Directory To Scan», при помощи кнопки «Open», вам нужно будет выбрать папку для сканирования.

В разделе «Output File», при помощи кнопки «Save As…», вам необходимо будет выбрать место для сохранения списка файлов.

Вы можете уточнить критерии поиска файлов по маске «*.*», выбрав нужное имя или тип файла («TXT», «Excel», «HTML» и т. д.). После выбора необходимых настроек, нажмите на кнопку «Make List».

После завершения сканирования в левом нижнем углу программы будет выведена информация об успешном завершении создания списка файлов: «All file processed correctly».

Программа DirLister выводит не только список файлов в данной папке, но и дает полную информацию о вложенных в эту папку файлах и папках, в том числе о размере файлов.

Получаем список файлов в Total Commander

Получить список файлов в папке можно при помощи популярного файлового менеджера Total Commander. Для этого, открываете в окне программы нужную папку.

В меню «Выделение», сначала выбираете пункт «Выделить всё». После того, как все файлы были выделены, в этом же меню выбираете пункт «Копировать имена в буфер».

Потом открываете Блокнот или другой текстовый редактор, и вставляете туда список файлов из буфера обмена.

Вы можете в меню «Выделение» выбрать пункт «Сохранить выделение в файл…». В этом случае, вам нужно будет дать имя файлу, а затем сохранить его в формате «TXT».

Сохранение списка файлов в папке в браузере

Получить список файлов в папке можно при помощи браузера. Сначала откройте браузер, а затем перетащите папку в окно браузера. Список файлов будет открыт в окне браузера. Между содержимым можно будет перемещаться как в Проводнике.

Выводы статьи

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

3 способа получить список файлов в папке (видео)

Есть несколько способов перемещения файлов и папок в компьютере. Но мы рассмотрим универсальный - тот, которым можно перенести информацию с CD или DVD диска, записать данные на флешку и с флешки. Также при помощи него можно переписать фото или видео с фотоаппарата (видеокамеры), с мобильного телефона и с других подключаемых к компьютеру устройств.

Перемещение файлов и папок из одного компьютерного места в другое называется копирование . Это такой процесс, при котором мы создаем точную копию данных и отправляем ее в нужное место (в папку, на флешку и т.д.)

Как переместить файл или папку

Щелкните правой кнопкой мышки по файлу или папке, которую хотите перенести в другое место. В открывшемся списке нажмите на пункт «Копировать».

После этого нужно открыть на компьютере то место, в которое Вы хотите перенести файл или папку. Это может быть Локальный диск D, папка Документы или любая другая папка, Рабочий стол и даже флешка.

Затем щелкните правой кнопкой мышки по пустому месту (не по какому-то значку, а рядом) и из списка выберите пункт «Вставить».

Вот и все. Теперь этот файл или папка есть в двух местах — и в том месте, откуда мы его взяли, и там, куда перенесли.

То есть, если разобраться, получается следующее: Вы открыли место, из которого хотите взять файл (например, открыли флешку), нажали по нужному файлу правой кнопкой мышки, выбрали из списка пункт «Копировать», затем открыли место, куда хотите перенести этот файл (например, открыли Документы), нажали по пустому правой кнопкой мышки и выбрали пункт «Вставить». В общем-то, ничего сложного.

Копирование нескольких файлов (папок)

Для того чтобы скопировать несколько файлов (папок), нужно сначала их выделить. Вот как это делается:

Поместите стрелку (курсор) на пустое место рядом с файлами и папками, которые хотите скопировать.

Нажмите левую кнопку мыши и, не отпуская ее, обведите прямоугольником необходимые файлы, папки. Когда они закрасятся цветом, это будет означать, что файлы и папки выделены. Отпустите левую кнопку мыши.

А теперь скопируем их:

Щелкните правой кнопкой мыши по любому выделенному значку (файлу, папке). Откроется список, из которого нужно выбрать пункт "Копировать".

Затем откройте на компьютере то место, в которое хотите поместить эти файлы и папки. Это может быть Локальный диск D, Документы, флешка или какая-то папка.

И, наконец, нажмите правой кнопкой мыши по пустому месту (по белому полю) и из появившегося списка выберите пункт "Вставить".

Всё! Файлы и папки перенеслись в новое место. То есть, они теперь в двух местах: и там, где были изначально, и в новом месте - там, куда Вы их скопировали.

Не пугайтесь, все не так сложно, как кажется на первый взгляд. Нужно только чуть-чуть потренироваться. Удачи!

Если Вы хотите полноценно пользоваться компьютером, нужно научиться копировать. – это перемещение файлов и папок из одного места в другое. То есть, если Вы хотите переписать какую-то информацию с флешки или диска на компьютер, то делать это нужно при помощи копирования.

Есть несколько способов копирования. Но мы рассмотрим универсальный. Этим способом можно перенести в компьютер информацию с CD или DVD диска, перенести в компьютер файлы и папки с дискеты и наоборот, записать на флешку и с флешки. Также при помощи копирования можно переписать фото или видео с фотоаппарата (видеокамеры), с мобильного телефона и с других подключаемых к компьютеру устройств.

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

Как копировать

Щелкните правой кнопкой мышки по файлу или папке, которую хотите перенести в другое место, то есть скопировать . В открывшемся списке нажмите на пункт «Копировать».

После этого нужно открыть на компьютере то место, в которое Вы хотите перенести файл или папку. Это может быть Локальный диск D, Мои документы, флешка или дискета.

Затем щелкните правой кнопкой мышки по пустому месту (по белому полю) и из списка выберите пункт «Вставить».

Вот и все. Теперь этот файл или папка есть в двух местах - и в том месте, откуда мы его взяли, и там, куда перенесли.

То есть, если разобраться, получается следующее: Вы открыли место, из которого хотите взять файл (например, открыли флешку), нажали по нужному Вам файлу правой кнопкой мышки, выбрали из списка пункт «Копировать», затем открыли место, куда хотите перенести этот файл (например, открыли Мои документы), нажали по пустому правой кнопкой мышки и выбрали пункт «Вставить». В общем-то, ничего сложного.

А теперь я покажу, как это делается на примере. Только переносить мы будем не один файл или одну папку, а несколько сразу.

Нажмите левую кнопку мыши и, не отпуская ее, обведите прямоугольником необходимые файлы, папки. Когда они закрасятся цветом, это будет означать, что файлы и папки выделены. Отпустите левую кнопку мыши.

А теперь скопируем выделенные файлы и папки:

Щелкните правой кнопкой мыши по любому выделенному значку (файлу, папке). Откроется список, из которого нужно выбрать пункт «Копировать».

Перемещать и копировать файлы и папки в Windows XP можно несколькими способами: с помощью команд меню окна и раскрывающегося меню, с помощью определенных комбинаций клавиш, а также методом перетаскивания мышью. Кроме того, Windows XP позволяет использовать для перемещения и копирования так называемый механизм задач. Обо всем подробнее далее в этой статье.

  • Чтобы переместить какие-либо файлы или папки, необходимо сначала их найти и выделить. После того как вы их выделите, сделайте следующее. Чтобы переместить выделенные объекты, выберите в меню окна команду Правка>Вырезать Вырезать .
  • Чтобы скопировать выделенные объекты, выберите в меню окна команду Правка>Копировать . Также можно щелкнуть правой кнопкой мыши на выделенных объектах и в открывшемся меню выбрать команду Копировать .
  • Теперь необходимо перейти в папку, в которую нужно вставить перемещаемые или копируемые файлы/папки и выбрать команду Правка>Вставить . Также можно щелкнуть правой кнопкой мыши на свободном от значков поле окна и в открывшемся меню выбрать команду Вставить .

Затем начнется процесс копирования, который будет наглядно показан на экране. Чтобы прервать копирование или перемещение, можно щелкнуть на кнопке Отмена , однако делать это нежелательно, поскольку есть риск утратить копируемые данные.

Перемещать и копировать файлы и папки можно с помощью специальных клавиатурных комбинаций, что позволит вам сэкономить немало времени. Достаточно запомнить эти комбинации, и со временем вы будете их нажимать автоматически.

  1. Найдите и выделите файлы или папки, предназначенные для копирования и переноса.
  2. Чтобы переместить выделенные объекты, нажмите комбинацию клавиш , а чтобы скопировать – комбинацию клавиш .
  3. Теперь перейдите в папку, в которую нужно вставить копируемые или перемещаемые файлы/папки, и нажмите комбинацию клавиш .

Если на экране открыто сразу два окна, то перенести или скопировать файлы или папки можно с помощью метода перетаскивания. Сделать это очень просто.

  1. Расположите окна так, чтобы содержимое обоих окон было хорошо видно.
  2. Выделите в одном окне нужные файлы или папки (одним из описанных выше способов) и, удерживая левую кнопку мыши нажатой, перетащите файлы или папки в другое окно. При этом файлы или папки будут перемещены в другое окно.
  3. Чтобы методом перетаскивания скопировать, а не переместить файлы или папки, одновременно с левой кнопкой мыши нужно нажимать кнопку . При этом рядом с указателем мыши будет отображен значок в виде плюса, свидетельствующий о том, что происходит копирование, а не перемещение данных.

Тем не менее у метода перетаскивания есть свои особенности, которые желательно изучить перед тем, как им воспользоваться.

  • Если вы перетаскиваете файл или папку в пределах одного и того же раздела жесткого диска (например, из папки D:/море в папку D: /море/тихое ), то перетаскиваемый объект будет перемещен, а не скопирован.
  • В свою очередь, при перетаскивании файла или папки с одного раздела жесткого диска на другой (например, из папки D:/море в папку C:/глубокое ), то объект будет скопирован, а не перемещен.
  • Если вы попытаетесь перетащить какой-либо системный объект Windows (например, папку Панель управления ), то на экране появится предупреждающее сообщение, а на новом месте будет создан ярлык на перетаскиваемый объект. Все системные объекты не являются файлами, поэтому скопировать их или переместить физически нельзя. Все, что можно сделать, это переместить не сам объект, а ярлык на него, с помощью которого можно будет получить быстрый доступ к этому объекту. Ярлык можно разместить, например, на рабочем столе Windows.

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

Как уже говорилось ранее, перемещать файлы и папки можно с помощью специального механизма задач. Делается это таким образом.

  1. Найдите и выделите файлы или папки для перемещения.
  2. В поле Задачи для файлов и папок , расположенном в левой области окна, щелкните на ссылке Переместить файл или Переместить папку . Если выделено несколько файлов или папок, щелкните на ссылке Переместить выделенные объекты .
  3. В появившемся окне выберите новое место для файла или папки, а затем щелкните на кнопке Переместить . В окне можно создать новую папку, щелкнув на кнопке Создать папку и введя имя папки.

Точно так же можно копировать файлы или папки. При этом в поле Задачи для файлов и папок нужно щелкнуть на ссылке Копировать файл , Скопировать папку или Скопировать выделенные объекты . Укажите в окне Копирование элементов то, куда выделенные объекты должны быть скопированы, после чего щелкните на кнопке Копировать .

  • Сергей Савенков

    какой то “куцый” обзор… как будто спешили куда то