powered by simpleCommunicator - 2.0.37     © 2025 Programmizd 02
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Проблема со сравнением переменных, Bash
6 сообщений из 6, страница 1 из 1
Проблема со сравнением переменных, Bash
    #39769952
lovely_kayt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Написала такой простенький скрипт. В pipeline.state.txt содержится лишь одна строка: run = 1.
Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
function main()
{
	local resourcesDir='resources/'
        local pipelineState=0
	local expectedState=1
	
	while [ "$pipelineState" ]
	do
		pipelineState=`grep -c 'run = 0' $resourcesDir'pipeline.state.txt'`
		echo $pipelineState
	done	
}

main



В цикле While пробовала вводить различные комбинации: [ $pipelineState -ne $expectedState ]
Проверяла оба значения $pipelineState, $expectedState на тип таким образом:
Код: powershell
1.
2.
if (echo "$1" | grep -E -q "^?[0-9]+$"); then
    echo "Number"


Результат: оба значения - числа.
Проблема в том, что консоль выводит последовательность нулей или единиц, при использовании "!="... Но не выходит из цикла.
При использовании оператора "-ne" вместо "!=" одна итерация цикла проходит нормально, а вторая выводит ошибку: : integer expression expected 1 -ne.
...
Рейтинг: 0 / 0
Проблема со сравнением переменных, Bash
    #39769983
Лысый дядька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
function main(){
    local state=0
    while [[ $state = 0 ]]
    do
       state=$(grep -c 'run = 0' pipeline.state.txt)
       echo got state = $state
    done
    echo OK
}

main
...
Рейтинг: 0 / 0
Проблема со сравнением переменных, Bash
    #39770013
lovely_kayt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Лысый дядька,

Я не знаю, что за чудеса происходят, но не смотря на то, что state после вычисления по прежнему равен нулю, цикл завершился(
...
Рейтинг: 0 / 0
Проблема со сравнением переменных, Bash
    #39770061
Фотография bga83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lovely_kaytЛысый дядька,

Я не знаю, что за чудеса происходят, но не смотря на то, что state после вычисления по прежнему равен нулю, цикл завершился(

при работе под виндой могут быть неожиданности, так что лучше все же именно в линуксе все это гонять
...
Рейтинг: 0 / 0
Проблема со сравнением переменных, Bash
    #39770120
yooo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А лучше всего отказаться от Bash как от богомерзкого извращения (имхо) и писать в python
...
Рейтинг: 0 / 0
Проблема со сравнением переменных, Bash
    #39770383
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробуйте
[ $state == 0 ]
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Проблема со сравнением переменных, Bash
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]