【问题标题】:Why can't I cd into this directory?为什么我不能 cd 进入这个目录?
【发布时间】:2014-11-22 19:43:19
【问题描述】:

我正在尝试 cd 进入一个目录,但终端说它不存在,即使它存在。

【问题讨论】:

    标签: macos unix terminal cd


    【解决方案1】:

    您使用两个参数调用cdProg16.1。你只需要用一个参数来调用它,Prog 16.1。为此,您需要“引用”中间的空格,这样它就不会被解释为分隔两个参数。这里有几个选项:

    • cd 'Prog 16.1'
    • cd Prog' '16.1
    • cd "Prog 16.1"
    • cd Prog" "16.1
    • cd Prog\ 16.1

    【讨论】:

    • 哦,伙计,菜鸟的错误,但我猜这就是我在文件名中添加空格的结果
    • 根据您的外壳,文件名完成可能会有所帮助。输入cd Prog,然后按TAB;它将扩展为 cd Prog\ 16.1/
    • @KeithThompson:这通常是正确的,但在 OP 的情况下并非如此,因为同一目录包含(例如)一个名为 Program 10.3 的文件。 (一些 shell 仍会尝试提供帮助,但在 OP 的情况下没有一个会非常成功。而且 OP 正在使用 Bash,它甚至不会尝试。)
    • 好点——但是 bash 确实 会自动完成这种功能,至少在您正确配置的情况下(我在发表评论之前使用 bash 对其进行了测试)。
    • @KeithThompson:为了完全确保我理解你——根据我的经验,如果你输入了一个明确的前缀,Bash 只会自动完成一个文件名(所以在 OP 的目录中,Program\ 10 会自动补全到Program\ 10.3),尽管它也可以将一个不明确的前缀扩展到不明确的第一个点(因此在OP的目录中,Progr 将自动补全到Program\ )。你是说 Bash 可以配置为尝试自动补全,甚至 过去 (就像 Zsh 所做的那样,或者像 Windows 中的命令提示符所做的那样)?
    【解决方案2】:

    命令以准确的消息回复,只需阅读错误消息即可。

    【讨论】:

      猜你喜欢
      • 2015-04-11
      • 1970-01-01
      • 1970-01-01
      • 2010-09-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多