Как вывести список только обычных файлов в UNIX
Я хотел бы перечислить только обычные файлы (не каталоги или символические ссылки), используя ls из инструментов GNU. Пока у меня есть только несколько хакерских грепов. Есть ли вариант или лучший способ сделать это?
Изменить: мне нужно больше кофе: find -type d
Спасибо
2 ответа
Решение
Вы пробовали найти тип -f. Я имею в виду
find /path/of/yourlocation type -f
Поскольку вы не указали свою оболочку, вот решение с использованием оболочки Z. С помощью zsh
очень легко ограничить любую команду только простыми файлами:
zsh% ls *(.)
zsh% tail *(.)
Это использует так называемый Glob Qualifier (.)
ограничивает расширение *
только простые файлы. Увидеть man zshexpn
для гораздо большего количества уточнений и объяснений. Используя Glob Qualifier, мне почти никогда не нужны чудовищные find
звонки больше.