我在 Linux 中编写了一个名为“a.sh”的 shell 脚本,其中只有一行:
光盘 ..
:然后我用以下命令运行它:
chmod +x a.sh
sh ./a.sh
:我该如何运行它而不得到:
“未找到命令”或“无法 cd”。也许我查看此代码的时间太长了,或者我做了一些明显错误的事情??
注意:后来我发现了问题所在。Emacs 在每一行末尾插入了一些奇怪的“^m”字符
答案1
cd 是 shell 的内置命令。/usr/bin/cd 或 /bin/cd 之类的命令存在的意义很奇怪。
首先运行这个。
which sh
这将输出 sh 可执行文件的路径
尝试在脚本中添加一个 shebang。整个文件如下所示
#!/bin/sh
cd ..
如果这不起作用,请按照 Stefan 的要求说明您采取的步骤。并粘贴确切的错误消息。
答案2
如果将 /bin/cd 放在它的位置会怎样?