Есть ли способ оставить только те строки, которые удовлетворяют некоторым (потенциально любым) условиям? Фильтровать строки тривиально, основываясь на том, что они сами соответствуют некоторому шаблону (с помощью grep). Но что, если у меня есть список имен файлов и я хочу оставить только те, которые являются каталогами? Что если у меня есть список URL и я хочу оставить только те, которые не возвращают 404, когда я их wget? И так далее. Эта логика обобщается с помощью bash?
Пример:
$ echo $LIST
/home/me/a
/home/me/b
/home/me/b/some.jpg
$ echo $LIST | ${//%(!$SOME_FANCY_BASH_FILTERING_LOGIC_TO_CHECK_IF_THIS_IS_A_DIRECTORY&%^#}
/home/me/a
/home/me/b