Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RFpro.ru: Командная строка в Windows (MS-DOS)


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный платный хостинг на базе Windows 2008

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Чемпионы рейтинга экспертов в этой рассылке

F®ost
Статус: Профессионал
Рейтинг: 2530
∙ повысить рейтинг »
Kom906
Статус: 8-й класс
Рейтинг: 1496
∙ повысить рейтинг »
Алексеев Владимир
Статус: Практикант
Рейтинг: 1242
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И ПО / Установка и настройка ОС / Командная строка в Windows (MS-DOS)

Номер выпуска:133
Дата выхода:05.09.2009, 16:35
Администратор рассылки:Калашников О.А., Руководитель
Подписчиков / экспертов:451 / 206
Вопросов / ответов:1 / 2

Вопрос № 171774: Доброго времени суток, уважаемые эксперты. Задача такая: через каждые 5 минут запускается шпионский батник, который 1. Проверяет наличие флешки и сохраняет её имя. Спасибо Алексееву Владимиру за идею reg query HKLM\SYSTEM\CurrentCo...



Вопрос № 171774:

Доброго времени суток, уважаемые эксперты. Задача такая: через каждые 5 минут запускается шпионский батник, который
1. Проверяет наличие флешки и сохраняет её имя.
Спасибо Алексееву Владимиру за идею
reg query HKLM\SYSTEM\CurrentControlSet\Services\Disk\Enum /v 1 > curfl.txt
2. Сверяет это имя со списком listfl.txt
3. Если такого имени флешки в списке нет, то создаётся список файлов на этой флешке
dir F: /A: /O:eg /S > %WINDIR%\fl%DATE%-%TIME%.txt
4. Заносит имя флешки в список listfl.txt для исключения замусоривания списками файлов.

Так как в имени флешки содержатся & --
1 REG_SZ USBSTOR\Disk&Ven_Verbatim&Prod_STORE_N_GO&Rev_5.00\079314BC097D&0 к примеру
, то findstr работает некорректно, а find не удовлетворяет своей интерактивностью (проверить ещё совпадения? yes/no). Батник запускается скрытно и вывод сообщений на экран не нужен.
Помогите, пожалуйста, облагородить текст батника.

Отправлен: 31.08.2009, 16:09
Вопрос задал: Ткачёв О. А., Посетитель
Всего ответов: 2
Страница вопроса »


Отвечает Алексеев Владимир, Практикант :
Здравствуйте, Ткачёв О. А..
Отлаженную программу "Регистратор флэшек" FlashReg.cmd Вы можете скачать с подробными комментариями по каждой команде. Чтобы после отладки (поправки буквы флэш-диска и испытания) запретить вывод сообщений на экран, запускайте программу с ключём /NoMsg , Например:
G:\Sync\FlashReg /NoMsg
Для периодического запуска программы в свёрнутом окне впишите в поле Выполнить назначенного задания Планировщика:
C:\WINDOWS\System32\cmd.exe /c Start "fik" /min "ДискПуть\FlashReg.cmd" /NoMsg
Слово "fik" (фиктивное имя окна) необходимо ввиду особенности команды Start воспринимать первый параметр в кавычках, как имя окна. Если Ваш ДискПуть не содержит пробелов или служеб-символов, то можно не заключать его в кавычки и тогда удалить слово "fik".
В момент исполнения файла будет мелькать кнопка в Панели задач. Если будет мешать, есть способы устранения.
В ОперСистеме WindowsXp (а возможно и в Vista) "Назначенные задания" не исполняются, если в текущей учётной записи не задан пароль. Как обойти это ограничение описано в ответе на вопрос 170765 , его аннотация в Приложении.

Приложение:

-----
Жизнь - это творчество!

Ответ отправил: Алексеев Владимир, Практикант
Ответ отправлен: 01.09.2009, 14:29

Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 253752 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!
    Отвечает Megaloman, Бакалавр :
    Здравствуйте, Ткачёв О. А..
    Я решил Вашу задачу несколько иначе, и, с моей точки зрения, проще.
    Идея решения - в качестве идентификации флэшки берём её серийный номер (см команду fsutil fsinfo (запустите её с ключом /?), результат сохраним в TMP-файл.
    Далее из него извлечем серийный номер накопителя.
    Результат команды Dir запишем в файл, где в имени содержится этот серийный номер. При последующем запуске bat-файла , будем проверять наличие файла, относящегося к имеющемуся серийному номеру подключенного в настоящее время устройства.

    Код:
    Set Out=False
    fsutil fsinfo volumeinfo F: >TmpBatFileRezult.txt

    FOR /F "Skip=1 tokens=2 delims=:" %%i in (TmpBatFileRezult.txt) do Call :FL_List %%i

    GoTo End

    :FL_List

    If %Out%==True GoTo End
    Set Out=True

    If Exist %WinDir%\fl_*%1.txt GoTo End

    Set Dt=%Date:~6,4%%Date:~3,2%%Date:~0,2%
    Set Tm=%Time:~6,2%%Time:~3,2%%Time:~0,2%

    Dir F: /A /O:eg /S >%WinDir%\fl_%Dt%-%Tm%_%1.txt

    rem pause %1

    :End
    Однако, что мне не нравится как в постановке задачи, так и, соответственно, решении.
    1. Работа Bat-файла будет отображаться в том или ином виде на экране. Возможное решение - запускать его из скрипта (JS или VBS, я решал такую задачу, могу повторить), который скроет окно выполнения.
    2. Ваш Bat - файл жестко привязан к букве (у Вас F:). Решение - опять же запускать bat-файл из скрипта, который определит буквы сменных накопителей.

    -----
    Нет времени на медленные танцы

    Ответ отправил: Megaloman, Бакалавр
    Ответ отправлен: 01.09.2009, 21:48

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 253774 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Оценить выпуск »
    Нам очень важно Ваше мнение об этом выпуске рассылки!

    Задать вопрос экспертам этой рассылки »

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров »

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.


    © 2001-2009, Портал RFpro.ru, Россия
    Авторское право: ООО "Мастер-Эксперт Про"
    Автор: Калашников О.А. | Программирование: Гладенюк А.Г.
    Хостинг: Компания "Московский хостер"
    Версия системы: 2009.6.8 от 28.08.2009

    В избранное