Regex не работает с grep

У меня есть строка, подобная этой

TEST="/dev/sda1 on /media/sda1 type vfat (rw,relatime,fmask=0000,dmask=0000,allow_utime=0022,codepage=cp437,iocharset=iso8859-1,quiet)" 

(Результат от mount | grep sda1 )

где я хочу совместить точку монтирования. Мое регулярное выражение ( принятое отсюда )

(?<=on[ \t])(.*)(?=[ \t]type)

Но по некоторым причинам это не работает для меня с несколькими инструментами (Busybox ash 1.14.2):

echo $TEST | grep -o -e '(?<=on[ \t])(.*)(?=[ \t]type)'

Не дает мне результата.

echo $TEST | awk 'match($0, /(?<=on )(.*)(?= type)/){print $0}'

Возвращает ошибку awk: bad regex '(?<=on[ ])(.*)(?=[ ]type)': Invalid preceding regular expression

expr match "$TEST" '\(?<=on[ \t]\)\(.*\)\(?=[ \t]type\)'

Также возвращает пустой результат.

Я чувствую себя глупо.

  • Найти и заменить строки в текстовом файле на выходе из другого файла
  • Почему grepping с цветом ничего не возвращает?
  • Как искать текст по всей файловой системе?
  • Как grep следующие строки из файла?
  • Найдите слова с тем же гласным, разделенным согласным
  • Как мне grep и сортировать с помощью этого конкретного шаблона?
  • Как использовать grep с шаблонами в файле и получить количество вхождений каждого шаблона?
  • grep: найдите все строки, содержащие японские кандзи
  • One Solution collect form web for “Regex не работает с grep”

    Lookarounds – это функции регулярного выражения perl. GNU grep реализует их (с опцией -P ). Я не могу сказать, делает ли какая-либо команда busybox.

    В этом случае, однако, вы просто ищете работу после «on». Выберите один из

     echo "$TEST" | awk '{for (i=1; i<=NF; i++) if ($i == "on") {print $(i+1); break}}' echo "$TEST" | sed 's/.*on[[:blank:]]\(.*\)[[:blank:]]type.*/\1/' 
    Interesting Posts

    разница между «ip link set» и «отключить / снова подключиться» в графическом интерфейсе?

    Переадресация командного вывода с помощью супервизора

    Получать значения по блоку в одном файле

    Как сделать новые файлы имеют разрешения 0664, а не 0644?

    Невозможно скомпилировать любое программное обеспечение

    Как устранить необходимость обновления моего дистрибутива?

    Отключение мнемоники в строке меню при сохранении кнопочной мнемоники в GTK2

    Обнаруживать, когда питание звуковой карты (с использованием alsa)

    Как выполнить буквенно-цифровое подтверждение для определенного столбца (скажем, $ 2) файла с помощью awk?

    Сценарий Bash для вывода пути на флеш-накопитель USB

    Есть ли приложение, которое записывает заметки с синхронизированным аудио?

    ssh изменить пользователя для одного хоста

    Как «UnJustify!» текст в GNU nano

    Выполнение команд при запуске на сервере Red Hat

    Работа crontab удалила мой файл в / tmp

    Linux и Unix - лучшая ОС в мире.