0

看下面的代码:

ECHO A2
MKDIR -v  /tmp/"My Batch Script File Assignment"
ECHO

ECHO A3
CD "/tmp/My Batch Script File Assignment"
PWD
ECHO

谁能告诉我为什么 ECHO A3 下的 cd 命令不起作用。以下 PWD 命令报告工作目录更改为 /tmp。但我想更改为“我的批处理脚本文件分配”。任何人都知道为什么它不是东这个。

4

1 回答 1

2

我假设您在 OS X 上使用 bash。

与“脚本”中的其他命令不同,更改目录 (cd) 命令必须是小写的,因为它需要是 shell 内置 cd,而不是 /usr/bin/cd(其目的我不知道)。

其他命令使用全部大写“工作”,因为 OS X 上的路径和文件名不区分大小写(默认情况下),因此 shell 会在 PATH 上找到正常的小写命令并调用它们。这对 CD 不起作用。您需要使用 cd。

所以:

MKDIR 调用 /bin/mkdir (ok)
ECHO 调用 /bin/echo (ok)
PWD 调用 /bin/pwd (ok)
CD 调用 /usr/bin/cd (不行,需要使用 shell 内置 cd)

于 2012-04-06T02:56:53.730 回答