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

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

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

vu1tur (25-01-2010 12:41): лимит страниц, продолжение: http://forum.ru-board.com/topic.cgi?forum=62&topic=19668  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117

   

vu1tur



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

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

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

  • Всего записей: 3690 | Зарегистр. 01-02-2003 | Отправлено: 11:37 26-05-2009 | Исправлено: TechnicsKuzya, 13:53 27-12-2009
    01MDM



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

    Цитата:
    запустил - только вместо mdm написал Администратор,

    Понятно, что у твоего "Администратора" нет ни bin, ни тем более eject.cmd Это моё домашнее "хозяйство", просто на двух компьютерах все приблизительно одинаково, что касается моего профиля.

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 18:54 02-09-2009 | Исправлено: 01MDM, 18:56 02-09-2009
    b2pip



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Как при копировании заменять новые файлы старыми??

    Всего записей: 14 | Зарегистр. 17-03-2007 | Отправлено: 00:33 03-09-2009
    slay1212

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
     Тут нет телепатов чтоб помочь. Ты где psexec пускаешь на какой тачке - из логона доменного перемещаемого профиля что-ли? Вручную когда даешь команду  
     \\192.168.0.1\scripts\start.bat  
    на той тачке все ок? В общем подробней если хочешь дождаться помощи

    Всего записей: 336 | Зарегистр. 28-05-2008 | Отправлено: 12:44 03-09-2009
    fd1136

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

    Цитата:
    Как при копировании заменять новые файлы старыми??

    Команда  

    Код:
     
    copy <источник> <результат>

    заменит любые совпадающие имена в <результат> безотносительно ко времени создания, т.е. новые файлы заменятся старыми.
    Но сомневаюсь, что именно ЭТО тебе нужно

    Всего записей: 49 | Зарегистр. 09-11-2006 | Отправлено: 12:48 03-09-2009
    Baton34V



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    В winxp была такая команда для извлечения usb-флешки:
    RunDll32.exe shell32.dll,Control_RunDLL hotplug.dll
    в windows7 эта команда выдаёт:
    Устройство "USB 2.0 USB Flash Drive USB Device" не является съемным и не может быть извлечено.
    при этом в трее Безопасное извлечение устройств и дисков нормально работает и флешку отключает, т.е. используется другая команда.
    С помощью какой команды win7 возможно отключить флешку?
     
    зы: файловая система флешки ntfs, Политика удаления - быстрое удаление.

    Всего записей: 1083 | Зарегистр. 21-08-2009 | Отправлено: 13:54 03-09-2009
    Alukardd



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

    Цитата:
     Тут нет телепатов чтоб помочь. Ты где psexec пускаешь на какой тачке - из логона доменного перемещаемого профиля что-ли? Вручную когда даешь команду  
     \\192.168.0.1\scripts\start.bat  
    на той тачке все ок? В общем подробней если хочешь дождаться помощи

    вообщем дело обстоит так...
    рабочий батник который и дает команду psexec запускается с рабочей машины Win XP Pro SP2 вход производится доменным юзером( не админом ), запрос идет на такую же машину с той же ОС и тоже на доменного юзера( у этого прав почти 0 ). у того чо прав 0 нету возможности использовать как либо сеть кроме уже мапированных дисков( простая команда типа \\server\public\ не пройдет ). но psexec ведь все выполнит от имени той учетки с котрой получил доступ к машине?
    думаю описания хватит?
    З.Ы. к сожалению щас не на работе и более точных описаний и тестов дать не могу( сказал что помнил по ГП )...

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 17:53 03-09-2009 | Исправлено: Alukardd, 18:01 03-09-2009
    slay1212

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
     ТЕ у тебя ни родной юзер этой машины ни тот кто пускает Psexec не имеют прав запустить
    Цитата:
    \\192.168.0.1\scripts\start.bat    
    на целевой машине, да и админ любой врядли сможет:
    Цитата:
    нету возможности использовать как либо сеть кроме уже мапированных дисков

     
      Те пробуй пускать сам Psexec батник доменным админом, но если сеть вобще так порублена то хз как сработает, ну и проверить, чтоб админы домена были локадминами целевой тачки, или можно другим юзером, из локадминов + есть права на доступ к старт бату

    Всего записей: 336 | Зарегистр. 28-05-2008 | Отправлено: 18:38 03-09-2009 | Исправлено: slay1212, 18:39 03-09-2009
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    право на мапирование дисков есть у юзера который запускает все это дело!
    а на удаленной машине я считал, что не важно какие права т.к. все делается от имени указанного в psexec >>> -u user -p password
    админы домена на машинах не прописаны, но права имеют полные и бесконтрольные.
    встроенная уч запись "Администратор" у всех одинаковая( ну кроме PDC конечно )

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 19:56 03-09-2009
    01MDM



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

    Цитата:
     
    а на удаленной машине я считал, что не важно какие права т.к. все делается от имени указанного в psexec >>> -u user -p password  
     

    А логин-пароль чей вводишь?

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 22:02 03-09-2009
    b2pip



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

    Цитата:
    простой вопрос: В сетевых компах есть папки, файлы в которых в процессе использования меняются (типа portablesoft). На сервере исходные папки с оригиналами.  
    Нужен батник, который будет копировать с исходных папок в сетевые только те файлы, которые не сходятся по дате (ну и новые, которых нет в исходнике).  
    Типа xcopy d:\sourse\ \\comp1\d\destination /... Но /D копирует только новые, а нужно те, где дата не совпадает


    Цитата:
    Как при копировании заменять новые файлы старыми??


    Попробую еще раз, последний:
    Нужна команда, которая будет копировать с sourse в destination ТОЛЬКО те файлы, которые не сходятся по дате (ну и конечно же новые, которых нет в destination).
    Типа тот же xcopy /D, только наоборот, заменять измененные файлы старыми версиями..
    Откат типа..

    Всего записей: 14 | Зарегистр. 17-03-2007 | Отправлено: 22:40 03-09-2009
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    01MDM
    либо встроенного "Администратор", либо учетка с правами доменного админа( копия "Administartor" )
    соовтетственно как писалось либо либо
    -u Администратор -p xxx
    -u MyDomen\Alukardd -p xxx

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 22:49 03-09-2009
    slay1212

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
     Чтож клещами то тянуть надо . Ну команда от имени запускающего psexec на целевой то тачке выполняется?  

    Цитата:
    \\192.168.0.1\scripts\start.bat    

     Запускающий psexec юзер и целевая тачка члены домена, он в локадминах целевой тачки? И админы домена могут и не быть в локадминах, зависит от политики домена.

    Всего записей: 336 | Зарегистр. 28-05-2008 | Отправлено: 09:52 04-09-2009
    01MDM



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    slay1212
    Я вообще не понимаю суть проблемы. Все запускается:

    Код:
     
    psexec \\192.168.0.1   \scripts\start.bat
     

    Специально создал папку scripts и батник, который создает пустой txt. Все сработало. Txt, как и ожидалось, лежит в \\192.168.0.1\С$\windows\system32
     
    Alukardd
    Еще раз покажи, как запускаешь
     

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 10:20 04-09-2009 | Исправлено: 01MDM, 10:37 04-09-2009
    tolyn77



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    подскажите пожалуйста как можно использовать имя файла в переменной?
    ну например test.bat в переменную передать test
    заранее благодарен

    Всего записей: 1501 | Зарегистр. 07-09-2004 | Отправлено: 11:46 04-09-2009
    01MDM



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    tolyn77
    Просто присваиваешь переменной значение:

    Код:
     
    set "test=test.bat"
     


    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 12:02 04-09-2009
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    slay1212
    01MDM
    к сожалению на работе были проблемы поваженее так что пробую все дома ( где нету доменной системы )...
    запускаю
    Код:
    psexec \\192.168.123.9 -u Администратор -p 1 \\192.168.123.4\D\start.bat

    ответ
    Код:
    Couldn't access 192.168.123.9...

    логин пробывал вообще не вводить, пробывал ключ -s пробывал логин в различных кодировках(ANSI OEM), пробывал взять в кавычки логин пароль - результат один - нету дотупа
    напомню что на работе выдавалась другая ошибка - "Psexec couldn't start start.bat on 192.168.48.4..." - но каракули снизу все теже...
    на конечной машине команда "\\192.168.123.4\D\start.bat" выполнилась!
    firewall отсутствует, Каспер был выключен на время проб.
     
    напомню что все проверяется сейчас дома на сетке без доменов, машины XP Pro SP2
     
    Добавлено:
    для верности врубил ноут( когда-то давно вырубал его утилитой PsShutdown ), опробывал все тоже самое на нем - итог - логин пароль прошол но сообщение как на работе
    Код:
    Psexec couldn't start \\192.168.123.4\D\start.bat on 192.168.48.7...

    и снизу какие-то каракули - вот скрин cmd http://letitbit.net/download/9877.9cd0ee80aaf065cedc7b103f0/screen.JPG.html

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 19:05 04-09-2009 | Исправлено: Alukardd, 19:32 04-09-2009
    01MDM



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

    Цитата:
    psexec \\192.168.123.9 -u Администратор -p 1 \\192.168.123.7\D\start.bat  

    У тебя все не верно. Просьба без обид, но бросается сразу в глаза:
    Вот строчка:

    Код:
     
    psexec \\192.168.123.9 -u Администратор -p 1 \\192.168.123.7\D\start.bat  
     

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

    Цитата:
     
     но каракули снизу все теже...  
     

    ну так переведи кодировку окна в chcp 1251. Все  почему-то думают, что у нас в консоли 1251. Прочитаешь ошибку.

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 19:31 04-09-2009 | Исправлено: 01MDM, 19:44 04-09-2009
    Alukardd



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

    Цитата:
    Я так думаю, что psexec не разберет еще один адресс в качестве аргумента. Может я и не прав, и проверить нет возможности. наверное будет верней:  
     
    Код:  
    psexec \\192.168.123.9 -u Администратор -p 1 D:\start.bat  
     
    Цитата:  
     но каракули снизу все теже...  
     
    ну так переведи кодировку окна в chcp 1251. Все  почему-то думают, что у нас в консоли 1251. Прочитаешь ошибку.

    с русификацией разобрался, ты тоже не сочти за неуча просто работаю и пишу батнике в BRED а он в консоль выводит русский сам...
    пробывал psexec \\192.168.123.9 -u Администратор -p 1 D:\start.bat  
    так работает! какие будут предложения? на работе есть у всех юзеров личный(полный доступ) и общий(только чтение) сетевые диски... если я на общий закину start.bat работать будет? - завтра попробую( не люблю по субботам работать((( )
    заодно может скажете почему на 1 комп не могу получить доступ?

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 19:43 04-09-2009 | Исправлено: Alukardd, 19:44 04-09-2009
    fd1136

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

    Цитата:
    Нужна команда, которая будет копировать с sourse в destination ТОЛЬКО те файлы, которые не сходятся по дате (ну и конечно же новые, которых нет в destination).  

    А если при восстановлении из source будут не только восстановлены старые файлы и скопированы новые, но и будут заменены одинаковые файлы? Т.е. просто файл будет перезаписан своей точной копией тебя устроит?

    Цитата:
    Откат типа..

     

    Всего записей: 49 | Зарегистр. 09-11-2006 | Отправлено: 20:18 04-09-2009
    Alukardd



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

    Цитата:
    psexec \\192.168.123.9 -u Администратор -p 1 \\192.168.123.7\D\start.bat

    я вижу ты код свой исправил) ты наверное опечатался сначала, а я тебе поверил) ну вообщем если понимашь о чем я с учетом моего ответа...
    ток терь не понятно что значит для каждой машины свой psexec в отдельном батнике?)
    psexec -то вместе с рабочим батником выполняется на рабочей машине а start.bat должен сработать на удаленной!
    вообщем я думаю мой пред ответ на твое сообщение вполне полон.

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 20:20 04-09-2009
       

    Страницы: 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 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117

    Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Задачи на bat-файлах 7
    vu1tur (25-01-2010 12:41): лимит страниц, продолжение: http://forum.ru-board.com/topic.cgi?forum=62&topic=19668


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru