Ответ 1
Если вы хотите test.log
, test2.log
и file2
, то:
find . -type f
Если вы не хотите file2
, то:
find . -maxdepth 1 -type f
Я ищу способ перечислить все файлы в каталоге, исключая сами каталоги, и файлы в этих подкаталогах.
Итак, если у меня есть:
./test.log
./test2.log
./directory
./directory/file2
Мне нужна команда, которая возвращает:./test.log./test2.log и ничего больше.
Если вы хотите test.log
, test2.log
и file2
, то:
find . -type f
Если вы не хотите file2
, то:
find . -maxdepth 1 -type f
Если вам нужны символические ссылки, трубы, файлы устройств и другие определенные элементы файловой системы, вы должны использовать:
find -maxdepth 1 -not -type d
В этом списке будет указано все, кроме каталогов.
с помощью find просто:
find . -maxdepth 1 -type f
find . -type f
find /some/directory -type f
$ find . -type f -print
Каждый файл будет в отдельной строке. Вы должны находиться в каталоге, который хотите найти.
Еще один вариант
ls -ltr | grep ^d