|
0 / 0 / 0
Регистрация: 29.11.2018
Сообщений: 8
|
|||||||||||||||||||||
Команда for не выдает результат, так как нет элементов набора. Как проверить и подменить значение?29.11.2018, 20:12. Показов 2840. Ответов 15
Всем привет. Нужна помощь с программкой.
Код таков:
Код выполняет поиск дисков на компьютере, затем выводит необходимые параметры для каждого диска. В принципе работает все нормально. Но есть нюанс. На моем компьютере подключено 3 жестких диска, и 3-й (/dev/sdc) подключен через внешний корпус в USB. И видимо из-за этого он не выводит параметр "Form Factor". Пример для /dev/sda :
Необходимо подменить результат выполнения цикла каким либо текстом ("none" или "not supported", это не важно), если он получается пустым. Надеюсь на Ваши предложенные идеи и помощь.
0
|
|||||||||||||||||||||
| 29.11.2018, 20:12 | |
|
Ответы с готовыми решениями:
15
Как проверить записи из набора на значение null? Sqlite, как проверить есть ли результат и какое значение Для каждой строки из заданного набора S проверить: верно ли, что она содержит как подстроку одну из строк из набора T |
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
||||||
| 29.11.2018, 20:22 | ||||||
0
|
||||||
|
0 / 0 / 0
Регистрация: 29.11.2018
Сообщений: 8
|
|||||||||||
| 29.11.2018, 21:00 [ТС] | |||||||||||
|
Да, это в принципе работает, если допустим запрашивать один параметр с конкретного диска. Но к сожалению я не знаю как встроить это в цикле. В таком виде
0
|
|||||||||||
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
||||||
| 30.11.2018, 15:29 | ||||||
|
какая из переменных не определяется?
вот ваш переделанный код
1
|
||||||
|
0 / 0 / 0
Регистрация: 29.11.2018
Сообщений: 8
|
||
| 30.11.2018, 18:07 [ТС] | ||
|
Тут каждый цикл выполняется отдельно. В первом for присваивается имя последнего найденного диска в цикле, а далее отображаются для него параметры, и только для него одного. У меня в коде программы идут последовательно вложенные циклы, поэтому результат выводится для каждого найденого диска, но проблема возникает с пустыми значениями.
0
|
||
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
||||||
| 30.11.2018, 20:20 | ||||||
|
вот для каждого и с выводом в файл:
0
|
||||||
|
6686 / 2278 / 347
Регистрация: 10.12.2013
Сообщений: 7,872
|
|
| 01.12.2018, 12:07 | |
|
выкинуть отсюда https://github.com/snd3r/GetDi... martUI.ps1 окошки
и останется нормальное решение под powershell, как оно и должно быть в 18-ом году 21-го века.
0
|
|
|
0 / 0 / 0
Регистрация: 29.11.2018
Сообщений: 8
|
|||||||||||
| 10.12.2018, 17:57 [ТС] | |||||||||||
|
Повозившись, собрал так:
0
|
|||||||||||
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
|
| 10.12.2018, 22:06 | |
|
1
|
|
|
0 / 0 / 0
Регистрация: 29.11.2018
Сообщений: 8
|
|||||||||||||||||
| 11.12.2018, 16:44 [ТС] | |||||||||||||||||
|
А повлияло вот что - добавил Setlocal EnableDelayedExpansion и использовал ! ! вместо % % для вывода. Код:
Всем большое спасибо за помощь. Результат получен.
0
|
|||||||||||||||||
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
|||
| 11.12.2018, 18:06 | |||
|
я вам в п6 привел как правильно и наглядно сделать вывод всех итераций, но вы решили опять лепить forы в спагетти - это уже дело ваше. Добавлено через 2 минуты
0
|
|||
|
0 / 0 / 0
Регистрация: 29.11.2018
Сообщений: 8
|
|||
| 11.12.2018, 18:21 [ТС] | |||
HDD_TYPE, которого у диска нет вообще, ну и присваивала ему значение, видимо беря его из предыдущих вычислений
0
|
|||
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
||||
| 11.12.2018, 23:22 | ||||
|
ODoyle, все вы напутали.
хотите поясню что происходит здесь: for %%i in (*) do set "text2=Z" цикл будет идти столько сколько файлов там где он запущен ибо так написано: for %%i in (*) при этом каждый раз переменная %text2% будет принимать значение Z как и указано: set "text2=Z" соответственно независимо от числа итераций всегда echo %text2% выведет Z поэтому чему вы там радовались или что вывели или что хотели сказать фразой Добавлено через 4 минуты но вам надо именно усложнить ...
0
|
||||
|
0 / 0 / 0
Регистрация: 29.11.2018
Сообщений: 8
|
||||||||
| 12.12.2018, 11:05 [ТС] | ||||||||
echo и разница между написанием %var% и !var!. Я этого не знал, а так как присваивание и вывод значений переменных я делал в цикле, то для меня это было критично.
0
|
||||||||
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
|||||||
| 12.12.2018, 17:16 | |||||||
Сообщение было отмечено ODoyle как решение
Решениетогда попробуйте подпрограмму взять в теги setlocal endlocal
1
|
|||||||
|
0 / 0 / 0
Регистрация: 29.11.2018
Сообщений: 8
|
|
| 13.12.2018, 10:58 [ТС] | |
|
0
|
|
| 13.12.2018, 10:58 | |
|
Помогаю со студенческими работами здесь
16
Как проверить если ли значение в textBox или нет Как подменить значение value в CHtml::listData в Yii?
При решении программа выдаёт значение функции, равное 0 или выдаёт ошибку. Что не так?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|