помогите с IF

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

Cetary
Сообщения: 21
ОС: Debian

помогите с IF

Сообщение Cetary »

Пытаюсь сделать следующее:

Код: Выделить всё

if grep -wi $CODE codelist.txt = "true"

т.е. если поиск дал положительный результат то...
Как это правильно сделать?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: помогите с IF

Сообщение sash-kan »

$ grep -wi $CODE codelist.txt &>/dev/null && echo "поиск дал положительный результат"
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Cetary
Сообщения: 21
ОС: Debian

Re: помогите с IF

Сообщение Cetary »

/del/
Разобрался, всё работает, огромное спасибо ещё раз форуму :)
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: помогите с IF

Сообщение drBatty »

наверное вы этого хотели?

Код: Выделить всё

if grep -q "cccc" *.txt; then echo "found"; fi
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
t.t
Бывший модератор
Сообщения: 7390
Статус: думающий о вечном
ОС: Debian, LMDE

Re: помогите с IF

Сообщение t.t »

drBatty писал(а):
26.05.2010 06:25
наверное вы этого хотели?

Код: Выделить всё

if grep -q "cccc" *.txt; then echo "found"; fi
Это то же самое, что уже написано выше (с той разницей, что менее переносимо: ключ q, насколько я помню, есть только у GNU grep).
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5404
ОС: Gentoo

Re: помогите с IF

Сообщение /dev/random »

t.t писал(а):
26.05.2010 08:41
drBatty писал(а):
26.05.2010 06:25
наверное вы этого хотели?

Код: Выделить всё

if grep -q "cccc" *.txt; then echo "found"; fi
Это то же самое, что уже написано выше (с той разницей, что менее переносимо: ключ q, насколько я помню, есть только у GNU grep).


Не только.

Код: Выделить всё

GREP(1P)                    POSIX Programmer's Manual                              GREP(1P)



PROLOG
       This  manual  page  is  part of the POSIX Programmer's Manual.  The Linux implementation of this interface may differ (consult the corresponding Linux manual page for details of Linux behavior), or the interface may not be implemented on Linux.

NAME
       grep - search a file for a pattern

SYNOPSIS
       grep [-E| -F][-c| -l| -q][-insvx] -e pattern_list...
               [-f pattern_file]...[file...]

       grep [-E| -F][-c| -l| -q][-insvx][-e pattern_list]...
               -f pattern_file...[file...]

       grep [-E| -F][-c| -l| -q][-insvx] pattern_list[file...]
Спасибо сказали:
Аватара пользователя
t.t
Бывший модератор
Сообщения: 7390
Статус: думающий о вечном
ОС: Debian, LMDE

Re: помогите с IF

Сообщение t.t »

/dev/random писал(а):
26.05.2010 09:44
t.t писал(а):
26.05.2010 08:41
drBatty писал(а):
26.05.2010 06:25
наверное вы этого хотели?

Код: Выделить всё

if grep -q "cccc" *.txt; then echo "found"; fi
Это то же самое, что уже написано выше (с той разницей, что менее переносимо: ключ q, насколько я помню, есть только у GNU grep).
Не только.

Код: Выделить всё

GREP(1P)                    POSIX Programmer's Manual                              GREP(1P)



PROLOG
       This  manual  page  is  part of the POSIX Programmer's Manual.  The Linux implementation of this interface may differ (consult the corresponding Linux manual page for details of Linux behavior), or the interface may not be implemented on Linux.

NAME
       grep - search a file for a pattern

SYNOPSIS
       grep [-E| -F][-c| -l| -q][-insvx] -e pattern_list...
               [-f pattern_file]...[file...]

       grep [-E| -F][-c| -l| -q][-insvx][-e pattern_list]...
               -f pattern_file...[file...]

       grep [-E| -F][-c| -l| -q][-insvx] pattern_list[file...]
Да, ошибся. А что, неужели она и в стандарте есть?

Бизибоксовый греп её точно не понимает:

Код: Выделить всё

$ /bin/grep -q
BusyBox v1.6.1 (2008-09-18 09:43:17 EEST) multi-call binary

Usage: grep [-HhrilLnqvsoeFEABC] PATTERN [FILEs...]
hpux-овый и irix-овский, насколько я помню, тоже.
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5404
ОС: Gentoo

Re: помогите с IF

Сообщение /dev/random »

t.t писал(а):
26.05.2010 10:08
Бизибоксовый греп её точно не понимает:
...
Usage: grep [-HhrilLnqvsoeFEABC] PATTERN [FILEs...]

Выделено мной.
Спасибо сказали:
Аватара пользователя
t.t
Бывший модератор
Сообщения: 7390
Статус: думающий о вечном
ОС: Debian, LMDE

Re: помогите с IF

Сообщение t.t »

/dev/random писал(а):
26.05.2010 10:17
t.t писал(а):
26.05.2010 10:08
Бизибоксовый греп её точно не понимает:
...
Usage: grep [-HhrilLnqvsoeFEABC] PATTERN [FILEs...]
Выделено мной.
М-да.. Что-то я совсем устал... Некорректно вызвал команду для проверки -- это ж надо такое. Прошу прощения.
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
Спасибо сказали: