LINUX.ORG.RU

Ответ на: комментарий от yandrey

Ща компа нет под рукой, но ls умеет смотреть рекурсивно, умеет показать только файл, а баш умеет подставить путь по шаблону, вот я и подумал, что можно и без грепа.

papin-aziat ★★★★★
()
Ответ на: комментарий от papin-aziat

В задаче ТС только файлы, поэтому надо ещё как-то исключить директории, например, добавить -p к ls и отфильтровать по слэшу.

yandrey ★★
()
Ответ на: комментарий от yandrey

Да, отлично!

ls -1R -p | grep '^d.*[^/]$'

А ещё можно вместо -p поставить -F и заодно выкинуть линки

ls -1R -F | grep '^d.*[^/@]$'

А у меня ещё какой-то файл непонятный показало daemon.js*, и его тоже выкинуть

ls -1R -F | grep '^d.*[^/@*]$'
papin-aziat ★★★★★
()

Использовать команду fd… Я не знаю в чем смысл таких придурочных тестовых заданий — лишь в проявлении садизма эникея, считающего себя програмиздом. find так-то повсеместно входит в набор базовых утилит и присутствует почти всегда

rtxtxtrx
()

На еще

shopt -s globstar; for file in target/**; do [[ -f "$file" && "${file##*/}" == d* ]] && echo "$file"; done
rtxtxtrx
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.