|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Сравнение переменной с пустым значением. |
|
|
CMD/BAT - [решено] Сравнение переменной с пустым значением.
|
Пользователь Сообщения: 105 |
Здравствуйте. Помогите пожалуйста.
Сам скрипт set "SHARA=\\srv-public\public" for /F "tokens=1,2,3,4,5,6" %%e in ('net use ^| findstr.exe /r ".*%SHARA%.*"') do set "SHARA4F=%%e %%f %%g %%h %%i %%j" set "SOSTOYANIE=%%e" set "BUKVA=%%f" set "SHARA-NAME=%%g" IF "%SHARA4F%"=="Ok" call :vykhod IF "%SHARA4F%"=="Отсоединен" call :procedura IF "%SHARA4F%"=="" call :procedura :vykhod exit /b :procedura net use %bukva% /delete /yes net use Z: %SHARA% /Persistent:Yes for /F "tokens=1,2,3,4,5,6" %%e in ('net use ^| findstr.exe /r ".*%SHARA%.*"') do set "SHARA4F=%%e %%f %%g %%h %%i %%j" set "SOSTOYANIE=%%e" set "BUKVA=%%f" set "SHARA-NAME=%%g" set "SHARA4F=Отсоединен Z: \\srv-public\public Microsoft Windows Network" set "SOSTOYANIE=Отсоединен" set "BUKVA=Z:" set "SHARA-NAME=\\srv-public\public" set "SHARA=\\srv-public\public" for /F "tokens=1,2,3,4,5,6" %e in ('net use ^| findstr.exe /r ".*\\srv-public\public.*"') do set "SHARA4F=%e %f %g %h %i %j" set "SOSTOYANIE=%e" set "BUKVA=%f" set "SHARA-NAME=%g" получаю а при выполнении ничего не получаю (следовательно и переход на процедуру не сработает) |
|
Отправлено: 11:02, 09-09-2021 |
fascinating rhythm Сообщения: 6626
|
Профиль | Отправить PM | Цитировать Домена нет? Если есть, то не лучше ли групповыми политиками реализовать?
|
------- Отправлено: 13:20, 09-09-2021 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 105
|
Профиль | Отправить PM | Цитировать Цитата DJ Mogarych:
Буду признателен если со скриптом поможете, DJ Mogarych |
|
Отправлено: 14:00, 09-09-2021 | #3 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать epoddubniy, Лучше бы Вы описали задачу, а не приводили своё решение. То, что Вы изобразили - извините, это одна большая ошибка. For у Вас не работает. Убедитесь:
For /F "tokens=1,2,3,4,5,6 delims=" %%e in ('net use ^| findstr.exe /r ".*%SHARA%.*"') do Echo "kuku" & set "SHARA4F=%%e %%f %%g %%h %%i %%j" set "SOSTOYANIE=%%e" set "BUKVA=%%f" set "SHARA-NAME=%%g"
Строка присваиваний неверна изначально. set "SHARA4F=%%e %%f %%g %%h %%i %%j" set "SOSTOYANIE=%%e" set "BUKVA=%%f" set "SHARA-NAME=%%g" |
------- Отправлено: 14:38, 09-09-2021 | #4 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать epoddubniy, Как я понял задачу:
Если Z: подключен к %SHARA%, то ничего не делаем В противном случае: если Z: нет или он подключен к другому ресурсу, то отсоединяем его и net use Z: %SHARA% /Persistent:Yes Вот вариант: |
|
------- Отправлено: 16:43, 09-09-2021 | #5 |
Пользователь Сообщения: 105
|
Профиль | Отправить PM | Цитировать Цитата megaloman:
Не понимаю, почему интерпретатор не "хавает" %SHARE% |
|
Отправлено: 16:46, 09-09-2021 | #6 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать Цитата epoddubniy:
|
|
------- Последний раз редактировалось megaloman, 09-09-2021 в 17:08. Отправлено: 16:58, 09-09-2021 | #7 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать |
Отправлено: 17:03, 09-09-2021 | #8 |
Пользователь Сообщения: 105
|
Профиль | Отправить PM | Цитировать Цитата megaloman:
Цитата megaloman:
megaloman, скажите пожалуйста, правильно ли я мыслю: если findstr.exe мне возвращает пустую строку, то переменным SOSTOYANIE, BUKVA, SHARA-NAME при выполнении кода: присвоится пустое значение? А если им присвоилось пустое значение, почему при выполнении команды, например в консоль не выводится текущая дата, то есть "проверка" условия IF оканчивается неудачей |
||
Отправлено: 17:31, 09-09-2021 | #9 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать Цитата epoddubniy:
Цитата epoddubniy:
|
||
------- Отправлено: 17:58, 09-09-2021 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Реализация функций длины переменной, выделение подстроки с параметрами в переменной. | NiOl | Скриптовые языки администрирования Windows | 7 | 31-01-2019 19:58 | |
CMD/BAT - [решено] Сравнение переменной цикла со строковой переменной | NickM | Скриптовые языки администрирования Windows | 2 | 17-01-2017 10:28 | |
CMD/BAT - [решено] В переменной содержится имя переменной | opravdin | Скриптовые языки администрирования Windows | 3 | 28-01-2013 11:11 | |
CMD/BAT - [решено] Сравнение строк с переменной и добавление в случае отсутствия | zion87 | Скриптовые языки администрирования Windows | 2 | 04-01-2013 15:08 | |
Delphi - [решено] SQL Выбор записей с максимальным значением | tarakan1983 | Программирование и базы данных | 29 | 14-06-2011 00:13 |
|