Сортировка файлов sed, grep и awk

Я пытаюсь получить из каталога все файлы, которые имеют «load» в своих именах. Я пытаюсь сделать:

find -type f | sed -s 'load

Однако, я периодически получаю сообщение об ошибке

sed: -e выражение # 1, char 1: неизвестная команда: `f '

Хуже всего то, что, хотя я могу манипулировать регулярными выражениями, я действительно плохо использую grep / sed / awk, и это все время тормозит меня. Какой бы материал я ни нашел в интернете, он не очень хорош. Ребята, вы знаете какие-нибудь всесторонние и довольно лаконичные скринкасты / уроки? Я все еще скучаю по умению читать и быстро понимать руководства Linux.

1
задан 30 January 2014 в 20:07

1 ответ

Вам вообще не нужен grep / sed / awk, пусть find отфильтрует результаты для вас:

find . -type f -name '*load*'

Или, только в bash

shopt -s globstar nullglob
load_files=( **/*load* )

, если вам нужен внешний инструмент:

find . -type f | grep load
find . -type f | awk '/load/'
find . -type f | sed -n '/load/p'

С помощью sed используйте -n для подавления нормального вывода и печатайте только для строк, соответствующих шаблону.

0
ответ дан 30 January 2014 в 20:07

Другие вопросы по тегам:

Похожие вопросы: