Как вывести список только обычных файлов в 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 звонки больше.

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