Скорее всего, localhost
разрешается в IPv6-адрес (::1
), который не фильтруется с помощьюiptables
(использованияip6tables
).
Вывод:
strace -e connect ssh localhost
сообщит вам, какой IP-адрес и какой протокол используются.
Используйте find
для запуска рекурсии grep
в каждом подкаталоге:
echo "Matches:"
find ParentDirectory -mindepth 1 -maxdepth 1 -type d \
-exec grep -rq pattern {} \; \
-and -print
-q
опция позволяет grep
останавливаться на первом совпадении -and -print
заставит find
печатать каталог только тогда, когда grep
что-то найдет.
Вариант с петлейfor
-:
echo "Matches:"
for d in ParentDirectory/* ; do
[ -d "$d" ] && grep -rq pattern "$d" && echo "$d"
done
Выход для любой версии:
Matches:
ParentDirectory/Subdirectory1
ParentDirectory/Subdirectory3