看下面的代码:
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。但我想更改为“我的批处理脚本文件分配”。任何人都知道为什么它不是东这个。
我假设您在 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)