![]() |
распаковка файлов в директорию а также вывод сообщения по маске файла
Имеется скрипт который отвечает за распаковку файлов в директорию а также вывод сообщения по маске файла имени что это за файл и удаления файлов архива. Данный скрипт работал на windows xp. При переходе на windows 7 перестал работать. Перестал работать на моменте где нужно распаковать файл. Почему то он не распаковывает а удаляет его. Если вручную распаковать в нужную директорию то сообщения выводятся. Вот текст этого скрипта.
echo off if exist z:\f_in\*.arj copy z:\f_in\*.arj c:\Post\Place\ arj x c:\post\place\*.arj c:\post\place\ del c:\post\place\*.p7s del c:\Post\Place\*.arj del z:\f_in\*.arj if exist c:\post\place\*044031*.xml net send "R34Makarova" Њ*ббЁў “аоЇЁ*бЄЁ© if exist c:\post\place\*044002*.xml net send "R34Makarova" Њ*ббЁў ЃлЄ®ўбЄЁ© if exist c:\post\place\*044007*.xml net send "R34Makarova" Њ*ббЁў †Ёа*®ўбЄЁ© if exist c:\post\place\*044018*.xml net send "R34Makarova" Њ*ббЁў ЌЁЄ®«ў*ҐўбЄЁ© if exist c:\post\place\*044042*.xml net send "R34Makarova" Њ*ббЁў ЉЁа®ўбЄЁ© if exist c:\post\place\*044025*.xml net send "R34Makarova" Њ*ббЁў ђг¤*п*бЄЁ© |
echo off удали, посмотри, что пишет. Мне кажется проблема в строке
Код:
arj x c:\post\place\*.arj c:\post\place\ |
«Вручную» — это как? arj.exe есть? Доступен в PATH? Какова разрядность используемой ОС — «windows 7»?
И код пакетного файла в любом случае надо корректировать. |
пробовал arj ставить не помогло. да именно так, проблема с этой строкой. arj в program files. echo off удаление также не помогало тупо удаляло
|
romfus, команда net send в Windows 7 больше не поддерживается. Как доказательство: net send /? не отработает. Почитайте о команде MSG.
Сто лет не использовал когда-то горячо любимый ARJ. Архиватор работает в командном окне или у него графический интерфейс? Errorlevel он возвращает? |
Запусти скрипт из каталога программы arj.exe. Диск z: есть в новой системе? Да, и нет сенд работать не будет в 7.
|
я знаю я уже настроил через msg
командное окно еррорлевелов нет |
Цитата:
Вы на мои вопросы ответите? |
Вот мой вариант батника
Код:
@Echo Off У меня не нашлось ни архиватора, ни arj- архива. Моделировал на основе rar. Пропишите свои файлы архива, вместо *.rar на *.arj Z:\Post\Place на c:\Post\Place Вместо Arc=C:\Program Files\WinRAR\Rar.exe путь к Вашему архиватору. Измените мои строки с сообщениями на нужные Вам. Не вижу смысла делать копию copy z:\f_in\*.arj c:\Post\Place\ чтобы потом всё это поубивать del c:\Post\Place\*.arj del z:\f_in\*.arj Батник необходимо сохранить в DOS (866) кодировке. |
Цитата:
Цитата:
|
Iska,
Цитата:
|
проблема решена. Нужно было чтобы скрипт находился рядом с файлом arj.exe, А не подскажите еще как настроить батник так чтобы нужные файлы перекидывались в c:\post\place\ а не нужные удалялись оттуда. То есть если судя по скрипту выше
*044007*.xml " *044018*.xml " *044042*.xml *044025.xml Данные файлы сохраняются в c:\post\place\ а остальные файлы например 044040.xml 044041.xml и т д удалялись. или просто дополнить внизу строчкой if exist c:\post\place\*044040*.xml delete *044040*.xml if exist c:\post\place\*044041*.xml delete *044041*.xml |
del /f /q C:\Post\Place\*044040*.xml
del /f /q C:\Post\Place\*044041*.xml Вот по моему работает удаление ненужных файлов |
Цитата:
|
Цитата:
Если надо оставить в папке c:\post\place только нужные файлы, вот вариант Код:
@Echo Off Цитата:
"C:\Program Files\ARJ\Arj.exe" |
Да я сам не знаю что это за ARJ exe этот файл уже давно существует. На работу устраивался он был. Когда новые пк ставил я просто перенес сам батник и этот arj в одно место и все работало
megaloman, этот код нужно ниже прописать или это как новый скрипт? |
Цитата:
|
Iska, Выкачал какой-то ARJ, но он не шароварный. На 30 дней.
Цитата:
Вот более интеллектуальное решение, разархивируем не все файлы вподряд, а только те, которые соответствуют списку. При этом ничего лишнего удалять не придётся, так как оно не появится. Специально нашёл arj, так что я уверен, что код рабочий. Код:
@Echo Off То, что прописано сейчас: For %%f In ("%FileIn%") Do "%Arc%" e -y "%%f" %Spisok% &&Del "%%f" при успешной работе архиватора удалит исходный arj-файл. При этом архивы, которые разархивировались неудачно, (например, там не было файлов, соответствующих заданным маскам из списка), останутся нетронутыми. Или возможен вариант, при котором в любом случае исходные архивы будут удалены. Этот вариант сейчас закомментирован (rem) rem "%Arc%" e -y "%FileIn%" %Spisok% &Del "%FileIn%" Выбирать Вам. |
Цитата:
|
Iska, Не нашёл
|
Прямую ссылку тут давать не комильфо, так что так: old dos arj - Поиск в Google, первая же ссылка. Смотрите в тех, что потолще — там инсталляция (arj sfx, конечно), и там будет LICENSE.DOC или, в более свежих, LICENSE.TXT.
|
Время: 08:09. |
Время: 08:09.
© OSzone.net 2001-