我看到有人使用cd *
然后使用其他命令,比如ls et al。
它做什么?有人可以解释一下吗?
答案 0 :(得分:4)
shell将*
扩展为当前目录内容的按字母顺序排列的列表。
cd
忽略第一个之后的所有参数。
在幸运和/或极度受控的情况下,您可以依赖通配符扩展中的第一项作为您希望cd
进入的目录。
如果您刚刚创建并下载到当前目录并使用单个子目录填充它,那么这可能会非常有用和/或有趣。我发现很难想象它可能有其他实际用途。
答案 1 :(得分:3)
此命令:
cd *
仅当当前路径中的第一个列表是目录时才会起作用,因为它扩展到当前路径中的第一个条目(文件或目录)。您可以通过echo *
来查看最先出现的内容。
我建议不要真的依赖它,因为按字母顺序首先扩展可以为您提供一个文件,如.bashrc
或其他一些以点开头的文件名。