Как получить список имен файлов в разных строках

Я хочу получить список всех файлов в каталоге, например, с ls, так что каждое имя файла будет на отдельной строке, без дополнительных деталей, предоставленных ls -l. Я посмотрел на ls --help и не нашел решения. Я пробовал делать

ls -l | cut --fields=9 -d" "

но ls не использует фиксированное количество пробелов между столбцами. Любая идея о том, как это сделать, желательно в одной строке?

Ответ 1

ls -1

Это число, не маленькое L.

Ответ 2

ls -1. С помощью:

-1 список файлов на строку

Работает на cygwin и FreeBSD, поэтому он, вероятно, не слишком специфичен для GNU.

Ответ 3

без труб: -)

 ls --format single-column

Обратите внимание, что длинные параметры поддерживаются только GNU coreutils, где BSD ls поддерживает только короткие аргументы -1

Ответ 4

Может быть:

ls | awk '{print $NF}'

Ответ 5

ls | cat ... или, возможно, ls -1

Ответ 6

Используйте команду sed для отображения отдельных столбцов

ls -l | sed 's/\(^[^0-9].\*[0-9]\*:[0-9]\*\) \(.*\)/\2/'

Ответ 7

Попробуйте следующее:

$ ls | xargs -n num

Здесь num - количество столбцов, которые вы хотите перечислить.

Ответ 8

сначала вы можете использовать это. он отобразит один файл на строку.

ls -l | sed 's/(.*) (. *) $/\ 2/'

иначе вы можете использовать

найти. -maxdepth 1 | sed 's/.///'

обе вещи одинаковы.

Ответ 9

Это также сделает

ls -l | awk '{print $NF}'