С Новым годом! Форум программистов, компьютерный форум, киберфорум
VBScript/JScript/WSH/WMI/HTA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
12 / 12 / 2
Регистрация: 02.12.2015
Сообщений: 620
1

Не работает xcopy

01.11.2019, 00:08. Показов 2224. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Подскажите, что не так?
Почему такой код работает
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Dim WshShell, oExec
Set WshShell = CreateObject("WScript.Shell")
b="C:\windows"
Msgbox b
Set oExec = WshShell.Exec("xcopy " & b & " . /T")
 
Do While oExec.Status = 0
       WScript.Sleep 100
Loop
 
WScript.Echo oExec.Status
,но если указать напр. b="C:\Windows\System32" или Set oExec = WshShell.Exec("xcopy C:\Windows\System32 . /T")
,то не работает, что тут не так??
VBS не допускает вложенные папки?
Имена папок для примера только. Параметр "/T" для проверки работы скрипта.
Реально будет 4 уровень вложенности.
Заранее спасибо за помощь!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.11.2019, 00:08
Ответы с готовыми решениями:

Xcopy, cmd and bat Не работает
Добрый день. Появилась такая проблема. Xcopy в батнике копирует с шары в папку на АРМ файл,...

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

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

XCOPY Отказано в доступе
XCOPY MYFOLDERS\etc\hosts %WINDIR%\System32\drivers\etc\hosts /H /Y /C /R /S Отказано в дотупе....

11
6338 / 2764 / 1072
Регистрация: 06.06.2017
Сообщений: 9,409
01.11.2019, 05:05 2
НиколайВасильев
1. У VBS другой раздел (ждём переноса).
2. Для создания пустой структуры папок вы используете xcopy. Так чего на VBS жалуетесь?
xcopy без разницы, какой каталог вы укажите — %WinDir% или %WinDir%\System32, если к обоим будет доступ чтения.
Не вижу никаких проблем с уровнем вложенности. Всё отрабатывает чётко с любым уровнем вложенности. Не понимаю, почему вы решили, что их всего 4:
.\BestPractices\v1.0\Models\Microsoft\Windows\WebServer\ru-RU\
.\config\systemprofile\Application Data\Acapela Group\HW2L\UserLexicons\
3. И зачем нужно определять Status? Что он вам даёт?
0
12 / 12 / 2
Регистрация: 02.12.2015
Сообщений: 620
01.11.2019, 08:37  [ТС] 3
FlasherX,
Цитата Сообщение от FlasherX Посмотреть сообщение
Так чего на VBS жалуетесь?
я не жалуюсь, я только спросил
почему Set oExec = WshShell.Exec("xcopy C:\aaa\bbb\cccc . /T")
не работает, но Set oExec = WshShell.Exec("xcopy C:\aaa . /T") работает без проблем

Цитата Сообщение от FlasherX Посмотреть сообщение
И зачем нужно определять Status? Что он вам даёт?
Мне статус вообще не нужен. Этот скрипт с xcopy взят с сайта мелкомягких для проверки работоспособности.
До этого, мне не приходилось запускать xcopy из vbs, потому взял готовый.
Собственно и vbs мне был бы не нужен вообще, если бы в bat была возможность работы со строчками.
Мой bat работает уже лет 10, но понадобилось менять принимаемый параметр, потому смотрю vbs.
0
6338 / 2764 / 1072
Регистрация: 06.06.2017
Сообщений: 9,409
01.11.2019, 09:04 4
НиколайВасильев, и что вы хотите? Я вам написал, что всё работает.
Весь скрипт: CreateObject("WScript.Shell").Run "xcopy %windir%\system32 . /T", 0

Цитата Сообщение от НиколайВасильев Посмотреть сообщение
если бы в bat была возможность работы со строчками.
Какой именно работы?

Добавлено через 2 минуты
Да, ещё момент. У вас система x64? Если да, то из под процесса какой битности вы скрипт запускаете?
0
12 / 12 / 2
Регистрация: 02.12.2015
Сообщений: 620
01.11.2019, 09:28  [ТС] 5
FlasherX, windows 7x64, запускаю из FAR для отладки(будет на десктоп иконка), не работает. Насчет битности и версии виндоус мелкомягкие ничего не сообщают ничего.

Цитата Сообщение от FlasherX Посмотреть сообщение
Какой именно работы?
Строку параметра теперь нужно модифицировать(добавить/убрать/переставить местами некоторые символы).
0
6338 / 2764 / 1072
Регистрация: 06.06.2017
Сообщений: 9,409
01.11.2019, 09:41 6
Цитата Сообщение от НиколайВасильев Посмотреть сообщение
Насчет битности и версии виндоус мелкомягкие ничего не сообщают ничего.
При чём тут мелкомягкие (вы и так x64 у винды написали)? FAR какой битности?

Цитата Сообщение от НиколайВасильев Посмотреть сообщение
Строку параметра теперь нужно модифицировать(добавить/убрать/переставить местами некоторые символы).
Не знаю, о каком параметре речь, но насчёт редакторования файлов там без стороннего софта (типа ssed, nhrt, fart) всё делается только через одно место.
0
12 / 12 / 2
Регистрация: 02.12.2015
Сообщений: 620
01.11.2019, 10:47  [ТС] 7
Цитата Сообщение от FlasherX Посмотреть сообщение
о каком параметре речь
о принимаемом через %1 в .bat или через WScript.Arguments(0) в .vbs
0
6338 / 2764 / 1072
Регистрация: 06.06.2017
Сообщений: 9,409
01.11.2019, 11:09 8
Вы мне на вопрос не ответили.
С параметром ясно. Тогда это более тривиальная задача для bat.
0
12 / 12 / 2
Регистрация: 02.12.2015
Сообщений: 620
01.11.2019, 13:47  [ТС] 9
Цитата Сообщение от FlasherX Посмотреть сообщение
Тогда это более тривиальная задача для bat
в bat есть возможность работы со строками? замена подстроки и отрезание части строки?
0
6338 / 2764 / 1072
Регистрация: 06.06.2017
Сообщений: 9,409
01.11.2019, 14:59 10
Можно, только к сабжу это не имеет отношения.
0
12 / 12 / 2
Регистрация: 02.12.2015
Сообщений: 620
01.11.2019, 15:39  [ТС] 11
FlasherX,
Запустил этот vbs в окне C:\Windows\SysWOW64\cmd
(Разумеется, "." заменил на путь)
Не работает, т.е. far здесь вообще не причём.
Шутка с битностью не удалась.

Цитата Сообщение от FlasherX Посмотреть сообщение
Можно
В bat нет ф-ций аналогичных substr or mid, length, replace
Без них не нельзя.
0
6338 / 2764 / 1072
Регистрация: 06.06.2017
Сообщений: 9,409
01.11.2019, 16:18 12
НиколайВасильев, я не понимаю, что вы хотите от работы кода. Рабочий каталог тут к делу не относится. Поэтому дайте делать вывод другим, при чём far или нет, ответив на поставленный вопрос.

Цитата Сообщение от НиколайВасильев Посмотреть сообщение
Без них не нельзя.
Не нельзя = можно. В соотв. разделе тысячи примеров.
0
01.11.2019, 16:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.11.2019, 16:18
Помогаю со студенческими работами здесь

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

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

Копирование командами copy (xcopy)
Скопировать имеющиеся в каталоге Windows и его подкаталогах растровые графические файлы в каталог...

Вызов команды XCOPY из C#-проекта
Здравствуйте уважаемые форумчане! Из с# проекта вызывается команда Xcopy со следующими параметрами:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru