Консультация № 157435
12.01.2009, 12:20
0.00 руб.
12.01.2009, 12:27
0 5 1
Здравствуйте уважаемые эксперты.
Задача: из дериктории на CD скопировать в целевую дерикторию все файлы по маскам (AAA*,BBB*,CCC* и пр. ).
И как это сделать с помощью Widows-кой командной строки(xxx.cmd , xxx.bat ) ?

Обсуждение

давно
Мастер-Эксперт
425
4118
12.01.2009, 12:32
общий
А при чём тут Паскаль?
Об авторе:
Я только в одном глубоко убеждён - не надо иметь убеждений! :)
Неизвестный
12.01.2009, 12:57
общий
это ответ
Здравствуйте, Арнст Яков!
Для паскаля путь решения приблизительно такой.


Приложение:
program Untitled;
uses Dos;
var
FromDir,ToDir,Temp:String;
c:Char;
begin
FromDir:='D:\FromDir\';
ToDir:='D:\ToDir\';
for c:='a' to 'z' do begin
Temp:=FromDir+c+c+c+'*';
exec(GetEnv('COMSPEC'),'/C copy /Y '+Temp+' '+ToDir+' >nul');
end;
end.
Неизвестный
12.01.2009, 14:33
общий
Спасибо за оперативность.
а можно коментарии к фрагменту кода:

for c:='a' to 'z' do begin
Temp:=FromDir+c+c+c+'*';
exec(GetEnv('COMSPEC'),'/C copy /Y '+Temp+' '+ToDir+' >nul');
end;

Неизвестный
12.01.2009, 14:41
общий
-" А при чём тут Паскаль?"-
Просто я изучаю в институте Паскаль , и могу скомпилировать .
поэтому хочется решение этого вопроса на паскале.
-------------------------------------------------------------------------
Какую маску применить к файлам такого типа " CJI#DD0109#0000.ANS " , причем с меняющейся каждый раз цифровой частью , а первые три символа постоянные ?
Неизвестный
12.01.2009, 15:51
общий
комментарий. Вы просили с помощью командной строки. Так вот exec запускает программу указанную в 1м параметре. GetEnv('COMSPEC') вернет путь к интерпретатору комманд. Собирается строка типа "/C copy /Y имяфайла кудакопировать". Второй параметр exec строка, передаваемая программе. /C заставляет коммандный интерпретатор выполнить следующую комманду и выйти из интерпретатора. Дальше copy читайте подсказки по copy /?
Форма ответа