нужно что-то типа if("вывод баша" = NULL){..}, как это сделать ?
Конкретней у меня команда:
cat file.txt | grep word
если вывод пустой чтобы далее, не знаю как написать
if(`cat file.txt | grep word` = NULL)
или if($(cat file.txt | grep word) = NULL){..}
Короче кто знает как это написать ?
>нужно что-то типа if("вывод баша" = NULL){..}, как это сделать ?
>Конкретней у меня команда:
>cat file.txt | grep word
>если вывод пустой чтобы далее, не знаю как написать
>if(`cat file.txt | grep word` = NULL)
>или if($(cat file.txt | grep word) = NULL){..}
>Короче кто знает как это написать ?Попробуй так:
if [ -z "$(grep word file.txt)" ]; then
...
fiможно анализировать не вывод grep, а его код завершения:
grep -q word file.txt
if [ $? -ne 0 ]; then
...
fiСоветую man test, man grep
... или используйте в условии ту самую пустую строку:
if [ "`grep word file.txt`" == "" ]; then
.......
fi
P. S. Простите, stan777, а вы что, серьезно не знали, как обозначается пустая строка? :-)
>if [ "`grep word file.txt`" == "" ]; thenДля сравнения строк предпочтительнее использовать знак = вместо двойного равенства, т.к. последний поддерживается лишь в bash и некоторых версиях ksh.
>... или используйте в условии ту самую пустую строку:
>
>if [ "`grep word file.txt`" == "" ]; then
> .......
>fi
>
>P. S. Простите, stan777, а вы что, серьезно не знали, как обозначается
>пустая строка? :-)
Спасибо!