Как скопировать файл (папку) в командной строке windows

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

Параметры командной строки:

источник -Копируемые файлы.

целевой_объект — Расположение или имена новых файлов.

/A — Копирование только файлов с установленным архивным атрибутом- сам атрибут при этом не изменяется.

/M — Копирование только файлов с установленным архивным атрибутом- после копирования атрибут снимается.

/D:m-d-y — Копирование файлов, измененных не ранее указанной даты. Если дата не указана, заменяются только конечные файлы, более старые, чем исходные.

/EXCLUDE:файл1… — Список файлов, содержащих строки с критериями для исключения файлов и папок из процесса копирования. Каждая строка должна располагаться в отдельнойстроке файла. Если какая-либо из строк совпадает с любой частью абсолютного пути к копируемому файлу, такой файл исключается из операции копирования.

/P — Вывод запросов перед созданием каждого нового файла.

/S — Копирование только непустых каталогов с подкаталогами.

/E — Копирование каталогов с подкаталогами, включая пустые. Эквивалентен сочетанию ключей /S /E. Совместим с ключом /T.

/V — Проверка размера каждого нового файла.

/W- Вывод запроса на нажатие клавиши перед копированием.

/C- Продолжение копирования вне зависимости от наличия ошибок.

/I — Если целевой объект не существует и копируется несколько файлов, считается, что целевой объект задает каталог.

/Q- Запрет вывода имен копируемых файлов.

/F- Вывод полных имен исходных и целевых файлов.

/L- Вывод имен копируемых файлов.

/G- Копирование зашифрованных файлов в целевой каталог, не поддерживающий шифрование.

/H — Копирование, среди прочих, скрытых и системных файлов.

/R — Перезапись файлов, предназначенных только для чтения.

/T — Создание структуры каталогов без копирования файлов. Пустые каталоги и подкаталоги не включаются в процесс копирования. Для создания пустых каталогов и подкаталогов используйте сочетание ключей /T /E.

/U — Копирование только файлов, уже имеющихся в целевом каталоге.

/K — Копирование атрибутов. При использовании команды XСOPY обычно сбрасываются атрибуты «Только для чтения».

/N — Использование коротких имен при копировании.

/O — Копирование сведений о владельце и данных ACL.

/X — Копирование параметров аудита файлов (подразумевает ключ /O).

/Y — Подавление запроса подтверждения на перезапись существующего целевого файла.

/Z — Копирование сетевых файлов с возобновлением.

/B — Копирование символической ссылки вместо ее целевого объекта.

/J — Копирование с использованием небуферизованного ввода/вывода. Рекомендуется для очень больших файлов.

Ключ /Y можно установить через переменную среды COPYCMD.

Ключ /-Y командной строки переопределяет такую установку.

Параметры командной строки

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

Программа во время запуска может принимать параметры. Они являются аргументами функции main.
Общий вид функции main следующий

void main(int argc, char **argv) {
	...
}

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

Первым аргументом (argv) всегда является имя программы. При этом имя выводится в зависимости от того, откуда была запущена программа.

#include <conio.h>
#include <stdio.h>

void main(int argc, char **argv) {
	printf("%s", argv);
}

Первый аргумент — это имя программы

Теперь научимся немного работать с командной строкой. Это понадобится для того, чтобы передавать аргументы нашей программе.
Сочетание клавиш Win+R вызывает окно «Выполнить». Наберите в нём cmd и вы откроете командную строку. Также можно найти cmd.exe поиском в меню Пуск.
В юникс-подобных операционных системах можно вызвать программу «терминал».

Выполнить

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

Для перехода по нужному пишется cd адрес. Например, нужно перейти на windows в папку C:\Windows\System32

В линуксе если нужно перейти в папку /var/mysql

Если путь содержит пробелы, то он пишется в двойных кавычках

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

Наберите
нажимайте tab и смотрите, что происходит.

Ещё одна важная команда dir на windows и ls на linux, выводит на консоль содержимое текущей папки (той папки, в которой вы находитесь в данный момент)

Ваша программа вернула своё полное имя. Перейдите в папку, где располагается ваша программа и посмотрите её содержимое

Переходим в папку, в которой располагается наша программа и смотрим содержимое

Теперь, после того, как мы перешли в нашу папку, можно выполнить нашу программу. Для этого наберите её имя.

Вызов программы из командной строки

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

#include <conio.h>
#include <stdio.h>

void main(int argc, char **argv) {
	int i;
	for (i = 0; i < argc; i++) {
		printf("%s\n", argv);
	}
}

Соберите проект. Перед сборкой убедитесь, что программа закрыта. Теперь вызовите программу, передав ей разные аргументы. Для этого напишите имя программы и через пробел аргументы

Передача аргументов программе

Давайте теперь напишем программу, которая получает два аргумента числа и выводит их сумму

#include <conio.h>
#include <stdio.h>
#include <stdlib.h>

void main(int argc, char **argv) {
	int a, b;
	if (argc != 3) {
		printf("Error: found %d arguments. Needs exactly 2", argc-1);
		exit(1);
	}
	a = atoi(argv);
	b = atoi(argv);
	printf("%d", a + b);
}

Соберём и вызовем

Функция принимает в качестве аргументов два числа

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

Многие стандартные команды также имеют параметры. В windows принято, что они начинаются с прямого слеша, в юниксе с минуса или двух минусов. Например

выводит только папки, а в терминале linux

выводит все файлы и папки с указанием атрибутов

Для просмотра дополнительных команд windows наберите в командной строке help или смотрите руководство (его легко найти в интернете). Для линукса команд и их опций гораздо больше, а некоторые из них являются самостоятельными языками программирования, так что стоит выучить хотя бы минимальный набор и их опции.

Q&A

Всё ещё не понятно? – пиши вопросы на ящик

Знай ярлыки мыши тоже

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

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

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

Как пользоваться?

Утилита XCopy используется так же, как и стандартная команда копирования — с указанием исходных и целевых файлов. Например, чтобы скопировать все файлы из папки MyDir диска C в одноименную папку диска D, введите команду:

XCopy C:\MyDir\*.* D:\MyDiг\*.*

Затем нажмите клавишу Enter. Утилита XCopy поддерживает набор ключей, наиболее важные из которых перечислены ниже.

Дополнительные ключи 

/A и /M — копируются только архивные файлы. С помощью этих ключей утилиту XCopy можно использовать для архивации. Ключ /M также сбрасывает архивный атрибут с копируемых файлов, что указывает на создание их резервной копии. Таким образом, при использовании XCopy как приложения для архивации следует применять исключительно ключ /M.

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

/G — позволяет копировать зашифрованные файлы в место, не поддерживающее шифрование. Эта функция дешифрирует файл, и для ее выполнения вы должны иметь соответствующие системные права.

/H — копирует скрытые и системные файлы.

/K — копирует атрибуты файлов вместе с самими файлами. В обычном режиме утилита XCopy лишает файлы атрибута «только чтение».

/O и /X — защита скопированных файлов. Ключ /O вместе с файлом копирует информацию о его владельце и таблицу управления доступом. Таблица управления доступом содержит сведения о пользователях, имеющих право доступа к файлу, и действиях, которые они могут с ним вы-полнять. Ключ /X также копирует информацию аудита файла. Эта функция важна при слежении за доступом к файлу.

/R — перезаписывает файлы с атрибутом «только чтение» при копировании. Используйте этот ключ при архивации, чтобы версии файлов, защищенных от записи, обновлялись в резервной копии.

/S и /E — копируют файлы не только из текущей папки, но и из всех вложенных в нее папок. Ключ /E также копирует пустые вложенные папки. Указанные ключи позволяют не только выполнить копирование файлов, но и сохранить структуру папки.

/T — создает копию структуры исходной папки, не копируя никаких файлов. Пользуйтесь этой функцией для создания новых проектов. Иногда бывает полезно лишь повторить структуру папки, не копируя из нее конкретную информацию.

/U — копирует из исходной папки только те файлы, которые присутствуют в целевой папке. Эта функция помогает обновить часть файлов целевой папки, избавляя от необходимости указывать каждый файл отдельно.

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

Добавление «Открыть окно команд здесь»

В ранних версиях Windows 10 существовала запись в контекстном меню под названием «Открыть окно команды здесь», которая открывала командную строку в указанной вами папке. Например, если вы щелкнете правой кнопкой мыши по папке и воспользуетесь этой командой, командная строка запустится с текущей папки.

После обновления 2017 Creator для Windows 10 Microsoft удалила эту опцию. Почему? Скорее всего, именно благодаря усилиям Microsoft оттолкнуть людей от использования командной строки к использованию PowerShell.

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

Сначала нажмите Пуск и введите . Затем нажмите на запись программы regedit.

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

HKEY_CLASSES_ROOT\Directory\Shell\CMD

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

Щелкните правой кнопкой мыши по ключу и выберите «Разрешения» в контекстном меню.

В открывшемся диалоговом окне нажмите «Дополнительно».

В верхней части окна расширенных настроек вы увидите указанного в списке владельца ключа. Нажмите «Изменить».

Затем введите свое имя пользователя и затем нажмите «Проверить имена», чтобы подтвердить его. Затем нажмите ОК.

Наконец, убедитесь, что установлен флажок Заменить владельца на субконтейнеры и объекты, прежде чем нажимать ОК.

Теперь мы вернулись на страницу разрешений. Выберите «Администраторы» в группе или именах пользователей и выберите «Разрешить» рядом с «Полное управление». Затем нажмите ОК.

Теперь нам нужно восстановить пункт контекстного меню для командной строки.

Вернувшись в окно CMD, все, что нам нужно сделать, это изменить «DWORD» с «HideBasedOnVelocityiD» на «ShowBasedOnVelocityId». Просто щелкните по нему правой кнопкой мыши и выберите «переименовать», затем измените имя DWORD.

Если все прошло по плану, вы должны увидеть опцию «Открыть окно командной строки», когда вы нажимаете SHIFT + правой кнопкой мыши на элементе в окне проводника Windows.

Примеры использования

Чтобы скопировать файл Memo.doc в файл Letter.doc на текущем диске и убедиться, что символ конца файла находится в конце скопированного файла, введите следующую команду:

Чтобы скопировать файл Robin.typ с текущего каталога на текущем диске в существующий каталог Birds на диске C, введите следующую команду:

Если каталог Birds не существует, файл Robin.typ будет скопирован в файл с именем Birds в корневой каталог диска C.

Чтобы скопировать несколько файлов в один, перечислите несколько файлов в параметре источник, разделяя их имена значком плюс (+), и укажите в параметре назначение файл, который должен содержать результат объединения этих файлов. Например, чтобы объединить файлы Mar89.rpt, Apr89.rpt и May89.rpt из текущего каталога на текущем диске и поместить их в файл Report в текущем каталоге на текущем диске, введите следующую команду:

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

Кроме того, несколько файлов можно объединить в один с помощью символов подстановки (* или ?). Например, чтобы объединить все файлы с расширением .txt в текущем каталоге на текущем диске в файл Combin.doc, введите следующую команду:

Если требуется объединить несколько двоичных файлов в один с использованием подстановочных знаков, воспользуйтесь параметром /b. В результате CTRL+Z не будет рассматриваться как символ конца файла в Windows XP. Например, введите следующую команду:

Внимание!

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

В следующем примере команда copy объединяет каждый файл с расширением .txt с соответствующим ему файлом с расширением .ref. Результатом является файл с тем же именем, но с расширением .doc. Таким образом, команда copy объединит файлы File1.txt и File1.ref в файл File1.doc, затем файлы File2.txt и File2.ref в файл File2.doc и т. д. Например, введите следующую команду:

Чтобы объединить сначала все файлы с расширением .txt, а затем все файлы с расширением .ref в файл Combin.doc, введите следующую команду:

Основные команды командной строки

DIR — сокращение от Directory, эта CMD команда для новичка выводит список всех файлов и папок в определенном каталоге. А также их размер, расширение и свободное пространство, оставшееся на диске. Команда dir в командной строке может быть изменена с помощью дополнительных параметров, таких как DIR /р (выводит список по страницам), DIR /q (выводит информацию о владельце сайта), DIR /w (выводит список в расширенном формате с максимальным количеством файлов в одной строке), DIR / d (выводит список в расширенном формате с разбивкой на столбцы), DIR /n (выводит длинный список одной строкой), DIR /l (выводит несортированный список имен каталогов и файлов в нижнем регистре), DIR /b (выводит список файлов без дополнительной информации). DIR /s выводит список файлов и директорий данного каталога, а также всех подкаталогов. Введя DIR/?, вы увидите список всех доступных параметров.

Команда CD командной строки или CHDIR (Change Directory) предназначена для того, чтобы сменить каталог. Команда выполняет несколько операций. CD перемещает вас на самый верх дерева каталогов. CD .. перемещает вас в родительский каталог по отношению к текущему. CD имя-каталога перемещает вас в этот каталог. Введите CD, чтобы вывести на экран имя текущего каталога.

MD или MKDIR (Make Directory) позволяет создать каталог (папку). Чтобы создать каталог, используйте следующий синтаксис: MD имя-каталога.

CLS очищает экран. Эта команда CMD в Windows применяется, если эмулятор командной строки заполнен перечнем команд и их операций.

EDIT имя-файла позволяет изменять содержимое файла.

Команда DEL позволяет удалить один или несколько файлов. В качестве альтернативы можно использовать команду ERASE. Для удаления файла используйте синтаксис DEL имя-файла.

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

RD или RMDIR — вы можете использовать эту команду, чтобы удалить папку, но папка должна быть пустой. Синтаксис довольно прост. Введите RD имя-папки. Если вы хотите удалить папку, которая не является пустой, вы можете использовать RD / S имя-папки. Будьте осторожны с этой командой, так как она удаляет папку и все ее содержимое без возможности восстановления.

RENAME, или REN переименовывает файл или каталог. Синтаксис этой команды CMD управления компьютером следующий: RENAME текущее-имя новое-имя. Например, если вы хотите переименовать файл с именем iPhone.txt в iPad.txt, введите RENAME iPhone.txt iPad.txt.

MOVE позволяет переместить один или несколько файлов из одного каталога в другой. Например, если вы хотите переместить файл 1.txt размещенный в текущей директории в папку с именем Numericals внутри текущего каталога, введите MOVE 1.txt Numericals. Если вы пытались переименовать директорию (папку) с помощью команды RENAME приведенным выше способом, то знаете, что это не работает. В этом нам поможет команда MOVE, так как она также может быть использована для переименования каталогов. Введите MOVE текущее-имя новое-имя, где текущее имя — это имя директории в текущей папке.

Команда COPY позволяет скопировать один или несколько файлов из одного места в другое. Команда позволяет объединять файлы одного и того же типа. Давайте посмотрим на различные примеры применения команды COPY:

  • COPY имя-файла имя-папки скопирует файл имя-файла в уже существующую папку;
  • COPY имя-файла новое-имя-файла создает копию файла с новым именем;
  • COPY *.doc Word копирует все файлы с расширением .doc в папку с именем Word.

CMD основная команда XCOPY предназначена для файлов и каталогов, включая подкаталоги. Простейший вариант ее использования — скопировать все файлы с одного диска на другой. Синтаксис: XCOPY Исходный-диск: Диск-назначения: /e, где параметр /е позволяет копировать все подкаталоги, даже если они пусты. Используйте /s, чтобы запретить копирование пустых директорий. Вы можете использовать имена папок исходного диска или диска назначения, чтобы просто скопировать все содержимое одной папки в другую.

Работа с файлами и папками из командной строки

Бывают ситуации, когда невозможно запустить стандартный файловый менеджер «Проводник Windows». Например, из-за действия вирусов-блокировщиков или при системных сбоях. В любом случае все, что можно сделать при помощи «Проводника», можно сделать и при помощи командной строки. Начнем с самого простого — просмотра содержимого папок.

Просмотр содержимого папки. При запуске командной строки перед мигающим курсором можно увидеть адрес расположения папки учетной записи на жестком диске. В нашем случае — это «C:Usersvzgn»:

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

Объекты, напротив которых написано — это папки, все остальное — файлы (напротив них указан размер в байтах).

Команду dir можно применять вообще папкам, расположенным в вообще любом месте на жестком диске. Для этого после команды следует указать путь до каталога. К примеру, для просмотра содержимого папки «Windows» на диске «C:» следует ввести команду:

dir c:windows

Запомните одно простое правило. Если в именах папок/файлов присутствуют пробелы, их следует писать в двойных («имя папки или файла») кавычках.

Открытие файла из командной строки. Для открытия файла достаточно вписать его полное название вместе с расширением в командную строку. Что не вводить имя файла целиком, используйте клавишу «Tab» (с ее помощью можно поочередно перебирать имена всех объектов в текущей папке).

В нашем случае был открыт файл .pgAdmin4.startup.log при помощи «Блокнота». Если бы это был музыкальный файл, запустился бы аудиопроигрыватель, если DOC/DOCX-файл — редактор «MS Word» и т.д. Таким образом, открытие файла в командной строке равнозначно двойному клику по файлу в «Проводнике Windows».

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

Перейдем в папку «Music». Т.к. она находится в текущем каталоге, достаточно ввести в консоль:

cd music

Теперь наше местоположение изменилось на «C:UsersvzgnMusic».

Давайте, перейдем в какую-нибудь папку, расположенную на другом локальном диске. Это можно сделать несколькими способами, но воспользуемся самым легким для запоминания.

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

Допустим, нам известно, что на диске «E» существует папка «Install», а в ней — пака «Web». Перейти в нее можно одной командой:

cd e:installweb

Запуск/открытие программы/файлы в другой папке или на другом диске. Запустим программу, расположенную где-нибудь глубоко на диске. Для запуска файла или программы можно просто указать полный путь до него. Текущее местоположение в этом случае не имеет значения. Запустим, например, текстовый редактор «Notepad++» одной командой:

C:»Program Files»Notepad++
otepad++.exe

Обратите внимание, что имя папки «Program Files» взято в кавычки, т.к. в нем присутствует пробел. Создание, удаление и переименование файлов и папок

Из командной строки можно выполнить все эти операции над файлами и папками

Создание, удаление и переименование файлов и папок. Из командной строки можно выполнить все эти операции над файлами и папками.

Создание простого текстового файла — copy nul простой_текстовый_файл.txt. Перед названием файла можно указать путь до конечной папки, в которой тот будет создан (если не указать, файл создастся в текущей папке).

Создание папки — mkdir папка. Папка также создается в текущем местоположении.

  • Удаление файла (или нескольких) — del простой_текстовый_файл.txt (если требуется удалить несколько файлов, просто вписываем их имена друг за другом через пробел). Удаляем созданный ранее файл.
  • Удаление папки — rmdir папка. Удаляем созданную ранее папку.

Переименование папки/файла — ren простой_текстовый_файл.txt новое_имя_файла.txt или ren папка новое_имя_папки. Переименуем созданный файл и папку.

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

Понравилась статья? Поделиться с друзьями:
Wi-Fi Роутер
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: