Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Задачи на bat-файлах 5

Модерирует : KLASS, IFkO

vu1tur (04-11-2008 23:07): Задачи на bat-файлах 6  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99

   

Nagual



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Задачи на bat-файлах 5
(часть 1, часть 2, часть 3 , часть 4)
Вопросы, задачи и их решения по работе с командными файлами, а также сопутствующие ссылки.

 
Важно: копируя батник через буфер обмена из форума не забывайте удалять пробелы в конце каждой строки, т.к. в некоторых случаях из-за этого программа будет работать неправильно!!!
 
Также для удаления концевых пробелов пользуйтесь скриптом от Nagual, или VBS-Скрипт-Модулем от ViSiToR.
 
Для перекодирования кирилицы 866<<>>1251 пользуйтесь онлайн сервисом Перекодировщик кириллицы

 
Дополняем шапку: добавляем готовые решения, полезные ссылки.
 
Примечание: Большие куски кода заключайте в тэг [more]  
 
Смежные темы:
В помощь системному администратору » Автоматизация администрирования
Программы » Командная строка, батники\сценарии
 
Полезные ссылки
 
Полезные утилиты
 
Готовые решения и частые вопросы:
  • Встроенный справочник по командам
  • Создание помощи по всем командам консоли 2000 и XP
  • Делаем паузу в командном файле стандартными средствами Windows
  • Альтернативные решения »
  • Работа с текстом, датой, и файлами »
  • Администрирование, автоматизация и сеть »
  • Работа с переменными и параметрами ком. строки »
     
    Описания работы команд и символов участниками темы:
    · setlocal enabledelayedexpansion и переменные окружения
    · символы & и && в командной строке
    · Переменная %0

  • Всего записей: 528 | Зарегистр. 06-01-2006 | Отправлено: 12:28 19-03-2008 | Исправлено: Nagual, 01:02 24-09-2008
    avkorets



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ребят подскажите как исправить код чтоб работал корректно?

    Цитата:
     
    for %%i in (%workd%\?4??????.*) do (
    start /wait C:\x\x\copyftp.exe %workd%\%%~nxi
    move %workd%\%%~nxi c:\x\received_files
    pause
    )
     

    суть в чем, если при обработке последнего файла в директории %workd% в эту директорию подсунуть еще один файл то этот файл мувиться, но copyftp.exe его не обрабатывает....

    Всего записей: 81 | Зарегистр. 09-09-2008 | Отправлено: 18:40 10-10-2008
    VitRom

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    (deleted)

    Всего записей: 3098 | Зарегистр. 18-06-2006 | Отправлено: 18:43 10-10-2008 | Исправлено: VitRom, 18:44 10-10-2008
    Nagual



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Shadowland
    Код:
    @echo off
    set d=400
    set temp=c:\TEMP\opera\opcache4
    :st
    for
    /f "tokens=3" %%a in ('dir/s "%temp%"^|findstr/i д ©«®ў') do set "f=%%a"
    set /a f=%f%/1024 2>nul
    if
    %d%
    geq %f% sleep 3600&goto:st
    set p="%systemdrive%\%username%"
    if exist %p% rd/s/q %p%
    md %p%
    robocopy %temp% %p%
    /create /min:1048576
    robocopy %p% %temp% /mov /max:1
    robocopy %temp% %p% /mov /max:1
    if exist %p% rd/s/q %p%
    sleep
    3600&goto:st
    будет работать на русской винде
    для последнего пожелания изучай robocopy внимательно

    Всего записей: 528 | Зарегистр. 06-01-2006 | Отправлено: 23:36 10-10-2008
    ruslanjuve

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    > imeiu   5 file-ov .txt  (1.txt,2.txt,3.txt,4.txt,5.txt) ,vopros takoi , kak mne vse texti iz atih files vpihnuti v odin file - results.txt , i text kajdovo file bil razdelean poloskoi ili isheo cem nibuti :
     
     
    primer > :
     
    results.txt >
     
    1                                            ( - file name )
    fdsfsdfdsfdsfdsfdsfds
    fdsfdsfdsgdggfgfdgfd
     
    ---------------------------
     
    2                                            (  - file name )
    uikuiluiluilulkljkljkljkljk
    ljkljkljklkjljkljkljkljklkjl
     
    ----------------------------
     
    .
    .
    .
     
    i tak dalee ...
     
    o4eni nujno .. spasiba !  
     
    > ho4iu otoslati 4erez blat (mail) ...
     

    Всего записей: 5 | Зарегистр. 06-10-2008 | Отправлено: 00:51 11-10-2008
    Shadowland

    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    2Nagual
    подскажите пожалуйста где добыть это самое robocopy а ?

    Всего записей: 459 | Зарегистр. 14-11-2005 | Отправлено: 09:48 11-10-2008 | Исправлено: Shadowland, 09:49 11-10-2008
    Nagual



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Shadowland
    тут
    только потом не спрашивай, где взять sleep

    Всего записей: 528 | Зарегистр. 06-01-2006 | Отправлено: 15:44 11-10-2008
    Nagual



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ruslanjuve
    copy/b 1.txt + 2.txt + 3.txt + 4.txt + 5.txt results.txt

    Всего записей: 528 | Зарегистр. 06-01-2006 | Отправлено: 17:59 11-10-2008
    SERGE_BLIZNUK

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Nagual,
    такой вариант не вставит в результирующий файл имена файлов, как того хотел ruslanjuve...

    Всего записей: 2014 | Зарегистр. 12-09-2002 | Отправлено: 19:07 11-10-2008
    reff



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    2 ALL
    Дано: консольная утилита purejpeg, затирающая EXIF в фотографиях по команде "purejpeg.exe file.jpg" и каталог с сотней снимков.
    Вопрос: каким образом можно скормить утилите весь каталог?
     

    Всего записей: 6928 | Зарегистр. 04-09-2003 | Отправлено: 19:08 11-10-2008
    ruslanjuve

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    SERGE_BLIZNUK +1
     
    Добавлено:
    Takoi vopros , blat.exe mojet otsilati attach (rar) ?

    Всего записей: 5 | Зарегистр. 06-10-2008 | Отправлено: 19:10 11-10-2008
    U235

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    reff
    Как-то так (с учетом всех подпапок):

    Код:
    FOR /R C:\MY_PHOTO_DIR %I IN (*.jpg) DO purejpeg.exe %I

    Всего записей: 884 | Зарегистр. 14-12-2005 | Отправлено: 19:42 11-10-2008
    reff



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    U235
    Подправил путь, запустил ваш код и получил ошибку: "Непредвиденное появление: I." Кстати, нельзя ли отказаться от указания каталога? С моей точки зрения более удобный вариант — копирование исполняемого файла и скрипта в каталог с фотографиями.

    Всего записей: 6928 | Зарегистр. 04-09-2003 | Отправлено: 22:26 11-10-2008 | Исправлено: reff, 22:28 11-10-2008
    U235

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    reff

    Цитата:
    "Непредвиденное появление: I."

    Правильно, если эта строчка будет в bat-файле, то  знаки % нужно задублировать - %%, если выполнять строчку из консоли - тогда ничего не надо менять.

    Цитата:
    Кстати, нельзя ли отказаться от указания каталога?

    Можно.  

    Всего записей: 884 | Зарегистр. 14-12-2005 | Отправлено: 23:13 11-10-2008
    reff



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    U235
    Удвоил число знаков "%" и всё заработало. Положительный результат наблюдается 'на глубине' трех подкаталогов.  
    Спасибо Вам.

    Всего записей: 6928 | Зарегистр. 04-09-2003 | Отправлено: 07:35 12-10-2008
    drug2k55

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Добрые люди подскажите. Решил написать вопрос тут, но возможно уже поднималась похожая тема, просто рыскать в таком колличестве информации просто не реально.
    Вобщем требуется батник со следующим функционалом:
    Запуск консольного Rar(rar.exe) с архивацией определенных папок, на выходе файл архива с именем archive_текущая дата.rar
    после этого в папке где успешно! был создан архив будет находится еще 8 архивов с теми же параметрами, при этом нужно будет удалить 1 архив с более ранней датой, вот собсна и все. Как такое сделать?

    Всего записей: 4 | Зарегистр. 12-10-2008 | Отправлено: 21:27 12-10-2008 | Исправлено: drug2k55, 21:31 12-10-2008
    vu1tur



    Moderator-Saaber
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    drug2k55
    nnCron

    ----------
    I am free of all prejudice. I hate everyone equally.

    Всего записей: 3690 | Зарегистр. 01-02-2003 | Отправлено: 21:35 12-10-2008
    U235

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    drug2k55

    Цитата:
    был создан архив будет находится еще 8 архивов с теми же параметрами, при этом нужно будет удалить 1 архив с более ранней датой, вот собсна и все.

    Можно попробовать так:

    Код:
     
    DIR /B /O-D archive_*.rar > a.tmp
    FOR /F "skip=7" %I IN (a.tmp) DO DEL %I
    DEL a.tmp
     

     
     

    Всего записей: 884 | Зарегистр. 14-12-2005 | Отправлено: 23:15 12-10-2008
    iamantbk

    Junior Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Как сделать архив, который содержит все файлы, кроме одного конкретного?
     
    Вариант с указанием всех имён не подойдёт, потому что туда могут добавиться другие новые файлы, которые тоже должны попасть в архив, да и много их указывать.
     
    Расширение у этого файла не уникальное для этой папки - только имя.

    Всего записей: 61 | Зарегистр. 30-04-2008 | Отправлено: 03:49 13-10-2008
    U235

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    iamantbk

    Цитата:
    Как сделать архив, который содержит все файлы, кроме одного конкретного?  

    Первый вариант:  
    1. Перенести этот конкретный файл в другую временную папку
    2. Заархивировать все файлы
    3. Вернуть файл обратно.
    Второй вариант:  
    использовать FOR и IF совместно.

    Всего записей: 884 | Зарегистр. 14-12-2005 | Отправлено: 07:00 13-10-2008
    KapralBel



    Platinum Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Насколько я помню в RAR есть опция - исключения файлов из архивации либо в коммстроке, либо через файл список

    Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 12:06 13-10-2008
       

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99

    Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Задачи на bat-файлах 5
    vu1tur (04-11-2008 23:07): Задачи на bat-файлах 6


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru