Intereting Posts

поиск подстроки в строке и возврат следующего слова

У меня есть эта строка, где я хочу найти ключевое слово, а затем вернуть следующее слово.

"SELECT \"city\",\"temp_lo\",\"temp_hi\",\"date\" FROM schema_name.\"weather_7\"" 

Я хочу вернуть “имя_схемы”, и единственный указывающий текст – предыдущая строка “ОТ”.

Спасибо

Для точной настройки, попробуйте

 sed 's/^.*FROM //; s/\..*$//' file 

Предполагая, что schema_name состоит из последовательности символов слова , если ваш grep поддерживает Perl-совместимые регулярные выражения (PCRE), вы можете использовать

 grep -Po 'FROM\s+\K\w+' 

Ex.

 echo '"SELECT \"city\",\"temp_lo\",\"temp_hi\",\"date\" FROM schema_name.\"weather_7\""' | grep -Po 'FROM\s+\K\w+' schema_name