cd *在bash中做什么?

时间:2014-07-25 13:55:22

标签: bash unix

我看到有人使用cd *然后使用其他命令,比如ls et al。

它做什么?有人可以解释一下吗?

2 个答案:

答案 0 :(得分:4)

shell将*扩展为当前目录内容的按字母顺序排列的列表。

cd忽略第一个之后的所有参数。

在幸运和/或极度受控的情况下,您可以依赖通配符扩展中的第一项作为您希望cd进入的目录。

如果您刚刚创建并下载到当前目录并使用单个子目录填充它,那么这可能会非常有用和/或有趣。我发现很难想象它可能有其他实际用途。

答案 1 :(得分:3)

此命令:

cd *

仅当当前路径中的第一个列表是目录时才会起作用,因为它扩展到当前路径中的第一个条目(文件或目录)。您可以通过echo *来查看最先出现的内容。

我建议不要真的依赖它,因为按字母顺序首先扩展可以为您提供一个文件,如.bashrc或其他一些以点开头的文件名。