Рейтинг:-1

почему `ls -d .` не перечисляет все каталоги, как это делает `ls -d */`?

флаг us

Как сказано в заголовке, я не понимаю, почему "правильное" использование лс -д следует добавить */ Для того чтобы лс чтобы найти каталоги в моем текущем каталоге, где добавление тривиального . не помогает

флаг hr
Это *shell*, а не `ls`, который "находит" каталоги, когда вы используете `*/`
Рейтинг:1
флаг cn

The -d option lists directories themselves, not their content. If you issue the command ls -d . then it will list the argument, i.e. ., a.k.a. the current directory by its own, rather than listing the contents of the argument, i.e., the files in the current directory.

. represents the current directory. */ matches all directories existing in the current directory.

Try ls -dl . for a more interesting variation of the ls -d . command.

FedKad avatar
флаг cn
Вы можете расширить свой ответ, упомянув, что символ `*` «расширяется» оболочкой в ​​список файлов или каталогов. Сравните это с `ls "*/"`.
vanadium avatar
флаг cn
@FedonKadifeli да, я мог бы, но я не хочу превращать это в курс bash. Я уже указал, что он "совпадает...".

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.