Команда xcopy не работает

«xcopy» не распознается, как команда

Здравстуйте! Пожалуйста, помогите решить проблему.
Создал батник, который рассширивает имя папки и по идее бы был должен копировать данную папку к пользователю на комп, но команда xcopy наотрез отказывается работать выводя ошибку: ‘xcopy’ is not recognized as an internal or external command, operable program or batch file.

Первый вариант батника:

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Подавление запроса «. это имя файла или каталога?» при выполнении команды XCOPY
Простое копирование, результатом которого должно быть другое имя файла. @echo off xcopy /y.

Команда копирования Xcopy (cmd):
Команда копирования Xcopy (cmd) 1) Скопируйте все файлы и подкаталоги, включая пустые и скрытые.

Некорректно работает команда xcopy
Запускаю следующий батник xcopy C:\12345\OUT\*.* C:\12345\IN\ На экране бесконечно мелькают.

Команда XCOPY c параметром /D:mm-dd-yyyy не работает
Добрый день, есть код echo off chcp 1251 cls echo Добро пожаловать! :CHOICE .

Решение

Но path вродебы не переопределяет, а переопределяет только количество папок, которые надо переименовать и скопировать. Или я Вас не правильно понял, если так — объясните как чайнику.
С move по крайней мере все работает, только проблема в том, что папки должны обязательно копироваться.

Добавлено через 11 секунд
Но path вродебы не переопределяет, а переопределяет только количество папок, которые надо переименовать и скопировать. Или я Вас не правильно понял, если так — объясните как чайнику.
С move по крайней мере все работает, только проблема в том, что папки должны обязательно копироваться.

Решение

Команда forfiles «Пути UNC (\\компьютер\общий_ресурс) не поддерживаются»
Доброго времени суток. Есть команда, которая удаляет старые папки: forfiles /p.

Что делает команда «set «variables=%*»»?
set «variables=%*»

Нужна команда,которая достает из файла Saver первую строку и «упаковывает» ее в переменную StatsFromSaver
Нужна команда,которая достает из файла Saver первую строку и «упаковывает» ее в переменную.

CMD/BAT: Команда генерирует путь к файлам «*.god», скопировать каждый файл в %

dp0
Приветствую! Есть команда, которая показывает путь к файлам .god на всем диске С: Мне нужно.

Источник

xcopy не распознается как внутренняя или внешняя команда, работающая программа или командный файл

У меня проблема с использованием команды ‘xcopy’.

Я строю проект C # с msbuild. В конце сборки вызывается командный файл для копирования моих сборок из Debug/Release в некоторые другие папки.

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

Путь задан правильно, xcopy do работает из командной строки Windows и из командной строки Visual Studio (заданной в среде проекта).

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

Я использую windows 7

Я столкнулся с той же проблемой.

Кажется, это проблема с переменной среды пути в Visual Studio.

Когда я добавил оператор «path» в начало моего события сборки, он выдал следующий вывод:

Кажется, это указывает на то, что в среде сборки VS путь не указан.

Когда я укажу полный путь к xcopy, проблема исчезла:

Я не уверен, что заставило Visual Studio потерять свой путь.

Установить переменную окружения PATH = %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\

Это случилось со мной после того, как я обновил одно из моих расширений Visual Studio, во время которого Visual Studio была закрыта и вновь открыта средством обновления. Я больше не мог правильно строить свой проект. Я закрыл Visual Studio и снова открыл его, и проблема ушла.

Это не проблема с Windows 7 или 8. Это на самом деле проблема с приложениями, которые обновляют переменные среды, такие как PATH . PATH хранится в реестре как «Расширяемое строковое значение» (REG_EXPAND_SZ), но много приложения записывают его обратно в реестр как «строковое значение» (REG_SZ). Если ваш путь содержит что-то вроде% SYSTEMROOT%, он не будет развернут в C:\Windows (или что бы то ни было у вас), если путь расположен в REG_SZ.

Исправление заключается в простом редактировании вашего пути вручную с панели управления. Вам нужно внести изменения (например, добавить; в конец пути), а затем применить его. Это исправит ваш путь в реестре как REG_EXPAND_SZ . (Перейдите в Панель управления системой и выберите «Дополнительные параметры системы». Отредактируйте переменную Path Environment в нижнем поле, и это должно исправить это.

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

Читайте также:  Как настроить прицел чтоб не дергался

Я впервые испытал это на примере командного файла, который я использую для копирования клиентского приложения Access на локальные компьютеры пользователя. Их среда представляет собой сочетание Windows 7 & 8 и 32-64 битных машин. Я заметил, что файл xcopy.exe находился как в папках System32, так и в папках SysWOW64, и подумал, не возник ли конфликт. Итак, я скопировал xcopy.exe в папку, в которой находится пакетный файл, и теперь он, похоже, работает. Просто подумал, что поделюсь этим.

У меня также была проблема с xcopy (то же сообщение об ошибке) — с очень простой пакетной программой, которую я использую для резервного копирования файлов на съемный диск. Пользуюсь этой программой не менее 5 лет без проблем. Тогда вчера xcopy неизвестен для Win7. Замена xcopy на% systemroot%\System32\xcopy в каждом случае решала проблему. Очень странно.

[Исправлено для меня] После добавления правильных путей к переменной среды «Путь» он все равно не работает (для cmd и VisualStudio) (даже после перезагрузки ПК).

Проблема была в неверном параметре реестра: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment] ParameterName =PATHEXT

Я имел значение .wlua;. Exe. Может быть, был сломан после установки чего-то . Все снова работает после изменения на: .COM; .EXE; .BAT; .CMD; .VBS; .VBE; .JS; .JSE; .WSF; .WSH; .MSC

Надеюсь, это поможет, если ничего не работает.

Источник

xcopy не распознается как внутренняя или внешняя команда, действующая программа или пакетный файл

У меня проблема с использованием команды «xcopy».

Я создаю проект C# с msbuild. В конце сборки вызывается пакетный файл для копирования моих сборок из Debug / Release в некоторые другие папки.

вот проблема, моя ошибка сборки и журнал ошибок «xcopy не распознается как внутренняя или внешняя команда, действующая программа или пакетный файл».

путь правильно установлен, xcopy работает из командной строки windows и из визуального командная строка studio (та, которая установлена в среде проекта).

Я пытался установить путь в пакетном файле, но это не поможет.

какие будут предложения?

Я использую windows 7

7 ответов

я столкнулся с той же проблемой.

похоже, что это проблема с переменной среды path в Visual Studio.

когда я добавил оператор «path» в начало моего события сборки, он произвел следующий вывод:

это, похоже, указывает на то, что путь пуст в среде сборки VS.

когда я указываю полный путь к xcopy, как это, проблема ушла:

Я не уверен что заставило Visual Studio потерять свой путь.

установить переменную среды PATH = %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\

Это произошло со мной после обновления одного из моих расширений Visual Studio, во время которого Visual Studio была закрыта и снова открыта программой обновления. Я больше не мог правильно строить свой проект. Я закрыл Visual Studio и снова открыл его, и проблема исчезла.

Это не проблема с Windows 7 или 8. На самом деле это проблема с приложениями, которые обновляют переменные среды, такие как PATH. Путь хранится в реестре как » расширяемое строковое значение «(REG_EXPAND_SZ), но многие приложения записывают его обратно в реестр как» строковое значение » (REG_SZ). Если ваш путь содержит что-либо вроде %SYSTEMROOT%, это не будет расширено в C:\Windows (или что у вас есть), если путь sotred в REG_SZ.

исправление просто отредактируйте свой путь вручную с панели управления. Вам нужно внести изменения (например, добавить a ; в конец пути), а затем применить его. Это исправит ваш путь в реестре, чтобы быть REG_EXPAND_SZ. (Перейдите на панель управления системой и выберите дополнительные системные настройки. Отредактировать переменную среды PATH в нижнем поле, и это должно исправить.

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

Я только что испытал это в первый раз с пакетным файлом, который я использую для копирования интерфейсного приложения Access на локальные машины пользователя. Их среда представляет собой смесь Windows 7 & 8 и 32-64 битных машин. Я заметил, что xcopy.exe был как в System32, так и в папках SysWOW64, и мне было интересно, был ли какой-то конфликт. Итак . я скопировал xcopy.exe в папку, где находится пакетный файл и теперь это, кажется, работает. Просто решил поделиться.

У меня также была проблема с xcopy (то же сообщение об ошибке) — с очень простой пакетной программой, которую я использую для резервного копирования файлов на съемный диск. Использую эту программу, по крайней мере, 5 лет не проблема. Тогда вчера xcopy неизвестен Win7. Замена xcopy на %systemroot%\System32\xcopy в каждом экземпляре решила проблему. Очень странный.

Читайте также:  Сбербанк аст как настроить браузер

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

Источник

xcopy

Копирует файлы и каталоги, включая подкаталоги.

В разделе Примеры показан принцип использования этой команды.

Синтаксис

Параметры

Параметр Описание
Обязательный элемент. Указывает расположение и имена файлов, которые необходимо скопировать. Этот параметр должен содержать либо диск, либо путь.
[ ] Указывает назначение файлов, которые необходимо скопировать. Этот параметр может включать букву диска и двоеточие, имя каталога, имя файла или их сочетание.
/W Отображает следующее сообщение и ждет ответа перед началом копирования файлов: Нажмите любую клавишу, чтобы начать копирование файлов
/p Запрос на подтверждение создания каждого целевого файла.
/C Игнорирует ошибки.
/v Проверяет каждый файл по мере его занесения в целевой файл, чтобы убедиться, что файлы назначения идентичны исходным файлам.
/q Подавляет отображение сообщений xcopy .
/f Отображает имена исходных и целевых файлов при копировании.
/l Отображает список копируемых файлов.
/g Создает расшифрованные файлы назначения , если назначение не поддерживает шифрование.
/d [: мм-дд-гггг] Копирует исходные файлы, измененные только в указанную дату или после нее. Если не включить значение mm-дд-гггг , команда xcopy скопирует все исходные файлы, которые новее существующих файлов назначения . Этот параметр командной строки позволяет обновлять измененные файлы.
/U Копирует файлы из источника , который существует только в месте назначения .
/i Если Source является каталогом или содержит подстановочные знаки, а назначение не существует, команда xcopy предполагает, что в поле назначение указано имя каталога и создается новый каталог. Затем команда xcopy копирует все указанные файлы в новый каталог. По умолчанию команда xcopy предложит указать, является ли назначение файлом или каталогом.
/s Копирует каталоги и подкаталоги, если они не пусты. Если параметр /s опущен, то команда xcopy работает в одном каталоге.
/e Копирует все подкаталоги, даже если они пусты. Используйте параметр /e с параметрами командной строки /s и /t .
/t Копирует структуру подкаталога (то есть только дерево), а не файлов. Чтобы скопировать пустые каталоги, необходимо включить параметр командной строки /e .
/k Копирует файлы и оставляет атрибут только для чтения в целевых файлах, если они есть в исходных файлах. По умолчанию xcopy удаляет атрибут «только для чтения».
/r Копирует файлы, которые доступны только для чтения.
/h Копирует файлы с атрибутами скрытых и системных файлов. По умолчанию команда xcopy не копирует скрытые или системные файлы.
/a Копирует только исходные файлы, для которых заданы атрибуты файла архива. /a не изменяет атрибут файла архива исходного файла. Сведения о том, как задать атрибут файла архива с помощью attrib, см. в разделе Дополнительные ссылки.
/m Копирует исходные файлы, для которых заданы атрибуты файла архива. В отличие от /a, /m отключает атрибуты файлов архива в файлах, указанных в источнике. Сведения о том, как задать атрибут файла архива с помощью attrib, см. в разделе Дополнительные ссылки.
/n Создает копии, используя короткие имена файлов или каталогов NTFS. /n требуется при копировании файлов или каталогов с тома NTFS в том FAT или при использовании соглашения об именовании файловой системы FAT (то есть 8,3 символов) в целевой файловой системе. В качестве целевой файловой системы можно использовать файловую систему FAT или NTFS.
/o Копирует владение файлом и сведения о списке управления доступом на уровне пользователей (DACL).
/x Копирует параметры аудита файлов и сведения о системном списке управления доступом (SACL) (подразумевается /o).
/exclude: имя_файла1 [+ [Имя_файла2]] [+ [FileName3] ( ) ] Указывает список файлов. Необходимо указать хотя бы один файл. Каждый файл будет содержать строки поиска с каждой строкой в отдельной строке файла. Если любая из строк соответствует любой части абсолютного пути к копируемому файлу, этот файл будет исключен из копирования. Например, при указании строкового obj -файла будут исключены все файлы, расположенные в каталоге obj , или все файлы с расширением obj .
/y Подавляет запрос на подтверждение перезаписи существующего целевого файла.
/-и Запрос на подтверждение перезаписи существующего целевого файла.
/z Выполняет копирование по сети в перезапускаемом режиме.
/b Копирует символьную ссылку вместо файлов. этот параметр появился в Windows Vista®.
/j Копирует файлы без буферизации. Рекомендуется для очень больших файлов. этот параметр был добавлен в Windows Server 2008 R2.
/? Отображение справки в командной строке.

Комментарии

Использование /z

Если вы потеряли подключение на этапе копирования (например, если сервер переходит в режим «вне сети»), то после повторного подключения Подключение возобновится. /z также отображает процент выполнения операции копирования для каждого файла.

Использование /y в переменной среды копикмд.

В переменной среды КОПИКМД можно использовать параметр /y . Эту команду можно переопределить с помощью /-и в командной строке. По умолчанию выводится запрос на перезапись.

Копирование зашифрованных файлов

Копирование зашифрованных файлов на том, который не поддерживает EFS, приводит к ошибке. Сначала расшифровать файлы или скопировать их на том, который поддерживает EFS.

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

Значение по умолчанию для назначения

Если опустить назначение, команда xcopy скопирует файлы в текущий каталог.

Указание того, является ли назначение файлом или каталогом

Если объект Destination не содержит существующий каталог и не заканчивается обратной косой чертой ( ) , появится следующее сообщение:

Нажмите клавишу F, если хотите скопировать файл или файлы в файл. Нажмите клавишу D, если хотите скопировать файл или файлы в каталог.

Это сообщение можно отключить с помощью параметра командной строки /i , в результате чего команда xcopy предполагает, что назначение является каталогом, если источником является более одного файла или каталога.

Использование команды xcopy для установки атрибута архива для целевых файлов

Команда xcopy создает файлы с установленным атрибутом Archive, независимо от того, был ли этот атрибут задан в исходном файле. Дополнительные сведения об атрибутах файлов и attrib см. в разделе Дополнительные ссылки.

Сравнение xcopy и diskcopy

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

Коды выхода для команды xcopy

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

Код выхода Описание
0 Файлы были скопированы без ошибок.
1 Не найдены файлы для копирования.
2 Пользователь нажал клавиши CTRL + C для завершения команды xcopy.
4 Произошла ошибка инициализации. Недостаточно памяти или места на диске, либо в командной строке введено недопустимое имя диска или недопустимый синтаксис.
5 Произошла ошибка записи на диск.

Примеры

1. чтобы скопировать все файлы и подкаталоги (включая все пустые подкаталоги) с диска A на диск B, введите:

2. чтобы включить в предыдущий пример все системные или скрытые файлы, добавьте параметр командной строки /h следующим образом:

3. чтобы обновить файлы в каталоге \репортс с файлами в каталоге \равдата, которые были изменены с 29 декабря 1993 г., введите:

4. чтобы обновить все файлы, существующие в \репортс в предыдущем примере, независимо от даты, введите:

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

Файл xcopy. out содержит список всех копируемых файлов.

6. чтобы скопировать каталог \кустомер и все подкаталоги в каталог \ \ публик\аддресс на сетевом диске H:, оставьте атрибут «только для чтения» и при создании нового файла в H: введите:

7. чтобы выполнить предыдущую команду, убедитесь, что команда xcopy создает каталог \аддресс, если он не существует, и подавление сообщения, отображаемого при создании нового каталога, добавьте параметр командной строки /i следующим образом:

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

Чтобы использовать предыдущую пакетную программу для копирования всех файлов в каталоге К:\пргмкоде и его подкаталогов на диск B, введите:

Интерпретатор команд подставляет к:\пргмкоде для %1 и B: для %2, затем использует xcopy с параметрами командной строки /e и /s . Если при работе команды xcopy возникает ошибка, пакетная программа считывает код выхода и переходит к метке, указанной в соответствующей инструкции If ERRORLEVEL , а затем отображает соответствующее сообщение и завершает работу из пакетной программы.

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

В предыдущем примере это конкретное значение исходного параметра . \ TOC * . yml копирует те же три файла, даже если их два символа \ пути были удалены. Однако файлы не копируются, если шаблон звездочки был удален из параметра source, что делает его простым . \ TOC. yml.

Источник

Оцените статью