find $PWD -maxdepth 1 -type f
Перечисляет файлы в текущем рабочем каталоге. -type f
сообщает find
список только обычных файлов (без папок), -maxdepth 1
предотвращает отображение содержимого в подпапках при выводе.
Я ищу команду, которая перечисляет все файлы в текущем каталоге.
Требования:
Что я получил так далеко, это:
ls -d1 $PWD/*
Который дает:
[User@User-arch Pictures]$ ls -d1 $PWD/* /home/User/Pictures/folder1 /home/User/Pictures/folder2 /home/User/Pictures/file1.png /home/User/Pictures/file2.png /home/User/Pictures/file3.png /home/User/Pictures/file4.png
или readlink -f $PWD/*
, который дает тот же результат.
Они удовлетворяют всем, кроме 4. требований. Как я могу настроить его так, чтобы он не показывал папки? Или есть более простая команда?
find $PWD -maxdepth 1 -type f
Перечисляет файлы в текущем рабочем каталоге. -type f
сообщает find
список только обычных файлов (без папок), -maxdepth 1
предотвращает отображение содержимого в подпапках при выводе.
Вы можете указать ls
включить конечную косую черту после имен каталогов, а затем передать ее по конвейеру grep
.
ls -pd1 $PWD/* | grep -v /$
Изменить: увидел мой недостаток в оригинальном ответе.