2012-05-08 2 views
7

Я часто использую ls (в длинном формате: ll), чтобы перечислить один файл, просто чтобы увидеть атрибуты. Как перечислить одну папку, без, расширяя содержание.В bash как использовать ls для перечисления одной папки

Пример

[email protected]:~/temp/test$ ls 
file.txt folder 
[email protected]:~/temp/test$ ls file.txt 
file.txt 
[email protected]:~/temp/test$ ls folder/ 
content.txt 
[email protected]:~/temp/test$ ls folder 
content.txt 
[email protected]:~/temp/test$ 

Edit:

Ответ явно написано в man ls: используйте опцию -d. Но почему ls folder не работает?

+0

RTFM!/10char: P – KurzedMetal

+0

@KurzedMetal: вы правы - мой вопрос должен был быть: почему 'ls folder' (без косой черты в конце) не работает ожидаемым образом? – hpekristiansen

+2

@ Hans-PeterE.Kristiansen 'ls directory' * * * работает ожидаемым образом. Возможно, вопрос должен быть «почему вы ожидаете, что он будет вести себя по-другому?» –

ответ

8

Как перечислить одну папку без расширения содержимого.

Попробуйте передать переключатель -d.

[email protected]:~$ ls -ld /etc 
drwxr-xr-x 144 root root 12288 May 8 18:50 /etc 
+0

@ Downvoter Нет комментариев? :( – cnicutar

+1

Weird downvote - это было то, что я хотел -thanks – hpekristiansen

+0

Неоправданный нисходящий (но вопрос, вероятно, не по теме). –

1

Чтобы увидеть атрибуты папки, используйте флаг --directory.

$ ls -lad /etc 
drwxr-xr-x 191 root root 12288 2012-05-08 13:07 /etc 

Флаг -a на самом деле не нужно, но это не больно, и делает команду немного больше мнемонические для меня написания слова. Подобная вещь может быть очень полезной при запоминании определенных вызовов.

Смежные вопросы