especifica -not -type d
para omitir diretórios do resultado da busca
find -not -type d | xargs less
ou melhor:
find -not -type d -print0 | xargs -0 less
que manipula nomes de arquivos com espaços neles melhor.
Às vezes, eu uso menos para acessar rapidamente uma pequena coleção de arquivos usando algo como
less brscan/*/*
e depois eu uso :n
para percorrer os arquivos
Se eu tiver uma pasta / s, por exemplo,
brscan/
├── DEBIAN
│ ├── conffiles
│ ├── control
│ ├── postinst
│ ├── postrm
│ └── prerm
├── etc
│ └── opt
├── opt
│ └── brother
└── usr
├── bin
└── lib64
neste exemplo, less
selecionará os arquivos na pasta DEBIAN
DEBIAN
├── conffiles
├── control
├── postinst
├── postrm
└── prerm
mas não vai descer em outros subdiretórios, apenas erros:
brscan/etc is a directory
brscan/opt is a directory
brscan/usr is a directory
é possível obter menos para paginar os arquivos nesses subdiretórios?
Estou pensando em algo como
find brscan/ | xargs less
mas não está funcionando - ainda pegando diretórios
Com a opção bash
, globstar , você pode :
shopt -s globstar
less brscan/**/*
Mas também inclui diretórios. Com zsh
, você pode filtrar a expansão apenas para arquivos regulares:
less brscan/**/*(.)
Todos os itens acima falharão se houver muitos arquivos retornados. O modo seguro é usar find
:
find brscan -type f -exec less {} +