Если вы имеете в виду первые 7 в алфавитном порядке, сzsh
:
printf '%s\n' /bin/c*(.[1,7]) > list.txt
Если вы имеете в виду
Om
glob(c*(.Om[1,7])
)om
glob oL
OL
Обратите внимание, что в find /bin/[c]*
оболочка расширяет этот глобус и передает полученные файлы (в алфавитном порядке )в качестве отдельных аргументов в find
.
Имейте в виду, что если какие-либо из этих файлов являются каталогами, find
начнет спускаться в них и перечислять их содержимое (в неопределенном порядке)
Вы бы хотели:
find /bin/c* -prune -type f | head -n 7 > file.txt
Где -prune
— запретить find
спускаться в любой каталог. Но имейте в виду, что использование head
таким образом работает только в том случае, если имена файлов не содержат символов новой строки (, что наиболее вероятно в случае /bin
, но не гарантируется в общем случае ).