Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Батник, выполняющийся только со сменных носителей

Ответить
Настройки темы
CMD/BAT - [решено] Батник, выполняющийся только со сменных носителей

Аватара для Habetdin


Автор проектов


Сообщения: 3652
Благодарности: 1498

Профиль | Сайт | Отправить PM | Цитировать


Нужно сделать, чтобы определенные команды в батнике выполнялись только если он запущен из корня сменного носителя (флешки)
Пока что есть только проверка на нахождение в корне диска:
PHP код: Выделить весь код

@echo off

if not %~dp0==%cd% (
echo 
nope
) else (
rem в корне
echo root
)
pause 

Как проверить, является ли диск сменным?

-------
Рекомендую: $25 на тест виртуального сервера (VPS) за регистрацию по ссылке


Отправлено: 16:07, 19-05-2012

 

Ветеран


Сообщения: 1758
Благодарности: 966

Профиль | Цитировать


Habetdin,
Код: Выделить весь код
@echo off
setlocal

set "wmic=wmic logicaldisk where name="%~d0" get drivetype /value"

for /f %%i in (' "%wmic%" ') do 1>nul set "%%i"

if %drivetype% equ 2 (echo Removable) else (echo Fixed)
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:28, 19-05-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата Habetdin:
…только если он запущен из корня сменного носителя (флешки) »
Проверять надо то, что пакетный файл именно запущен в нём (т.е. — текущим каталогом является корневой каталог сменного устройства) или же что пакетный файл находится в корневом каталоге сменного устройства?

Отправлено: 19:28, 19-05-2012 | #3


Аватара для Habetdin


Автор проектов


Сообщения: 3652
Благодарности: 1498

Профиль | Сайт | Отправить PM | Цитировать


Iska, первое - проверять текущий каталог

PHP код: Выделить весь код

@echo off

setlocal
set 
"wmic=wmic logicaldisk where name="%~d0" get drivetype /value"
for /%%i in (' "%wmic%" ') do 1>nul set "%%i"

if not %~dp0==%cd% (
echo 
Батник не в корне
) else (

    if %
drivetypeequ 2 (
    echo 
Флешка
    rem тут нужные комманды
    
) else (
    echo 
Не флешка
    
)

)

pause
exit 

Вот что-то такое получилось...

-------
Рекомендую: $25 на тест виртуального сервера (VPS) за регистрацию по ссылке


Последний раз редактировалось Habetdin, 19-05-2012 в 21:57.


Отправлено: 21:44, 19-05-2012 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Батник, выполняющийся только со сменных носителей

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Автозапуск со сменных носителей. Как запретить? TCrash Microsoft Windows NT/2000/2003 3 12-04-2010 19:00
Комп не видит сменных носителей после удаления virtualdrive pro soggot Microsoft Windows Vista 1 14-09-2009 17:26
Интерфейс - [решено] Зачеркнутые иконки сменных дисков ogps2 Microsoft Windows 2000/XP 7 05-07-2008 19:14
Значки сменных носителей Cadillac Microsoft Windows 2000/XP 2 12-06-2007 01:24




 
Переход