Подстрока grep между кавычками

Допустим, у меня есть строка вроде этого:

title="2010-09-11 11:22:45Z" 

Как я могу grep самой даты и игнорировать цитаты / название / Z ?

  • Как найти все пути, не совместимые с Windows?
  • Надежная идентификация пути к каталогу, содержащему запущенный скрипт
  • Возврат статуса команды Busybox `timeout`
  • сделать мой режим отображения zsh в режиме vi
  • Что такое аргумент `name` для` sh` для / do?
  • ограничивать контекст grep частью строки результата
  • Файл может содержать больше строк, таких как:

     randomstring title="2010-09-11 11:22:45Z" title="disregard me" 

    Поэтому я хочу только grep timestamps с помощью одной команды grep .

  • как я могу напечатать строку N и Mth выше или ниже соответствующей строки с помощью grep?
  • Как использовать grep для поиска только в первой строке файлов для определенной строки?
  • grep - удаление текста после токена разделителя
  • Тест, если команда принимает конкретную опцию
  • `cd` вверх по каноническому пути
  • Сценарий оболочки для извлечения текста с веб-сайта
  • 4 Solutions collect form web for “Подстрока grep между кавычками”

    С помощью GNU grep вы можете:

     $ echo 'title="2010-09-11 11:22:45Z"' | grep -oP 'title="\K[^"]+' 2010-09-11 11:22:45Z 
     grep -oP '[0-9-]{10} [0-9:]{8}' filename 

    Это должно работать только на GNU-версии grep :

     <file.html grep -oP "(?<=title\=\")\d+-\d+-\d+" 

    Пример здесь regex101.

    Если вход будет в этом формате, то только ниже команда легко решает вашу проблему

     echo "title=\"2010-09-11 11:22:45Z\"| cut -d '"' -f2 
    Linux и Unix - лучшая ОС в мире.