需要帮助了解linux中的ls -d命令

时间:2016-04-19 20:45:28

标签: linux bash

我试图绕着' ls -d'命令。

我执行命令' ls -d'在任何给定的目录中,我得到的只是一个'。'

我运行命令' ls -d * /而我只得到目录

我运行命令-ls -d *并获取所有文件,包括那些不是目录的文件。

手册页只是说明了这一点:

list directories themselves, not their contents

有人可以帮忙解释一下这个开关应该如何工作吗?

1 个答案:

答案 0 :(得分:1)

要理解的事情是:

  • ls列出了当前目录,默认情况下称为.
  • ls -d使ls显示其列出的目录,而不是该目录的内容。

您描述的行为都遵循:

    显示ls -d
  • .显示您所在的目录 - 默认目标ls,但没有给出任何参数。
  • ls -d */告诉你的shell运行ls,当前一个作为参数传递的每个目录;然后ls -d显示每个参数的条目,表现为报告。
  • ls -d *告诉你的shell运行ls,当前目录中的每个条目都作为参数传递。 ls然后为每个这样的参数列出一个条目,而不是显示每个参数的内容,否则它将是目录名称。