1

我现在正在运行一个 bash 脚本,我需要在其中更改我的目录并从更改的目录执行脚本。

我想将我的文件夹更改为myfolder并运行script.sh到该特定文件夹。

有什么办法可以在 Bash 中做到这一点?

我已经试过了

cd myfolder
./script.sh

但这不起作用。

4

5 回答 5

3

尝试

cd myfolder
./script.sh

希望这可以帮助。

于 2012-06-12T18:28:43.807 回答
2

简单得要命

(cd myfolder && ./script.sh)

希望这有帮助:)

于 2012-06-12T18:29:49.453 回答
1

为什么不简单地试试这个:

cd /absolute_path/myfolder
./script.sh

指定绝对路径使其独立于脚本的发布位置。

于 2012-06-12T18:29:10.187 回答
0

脚本相对于什么位置myfolder?发布的所有这些答案都应该有效。例如,如果myfolder在根目录中,并且脚本在其中,则/path/to/file.sh您需要先转义。

cd ../../myfolder
./script.sh

ls您也可以通过在脚本中添加一个来检查这一点。如果你没有看到myfolder,那么你就在错误的位置。

你的脚本是可执行的吗?尝试 achmod +x script.sh并再次运行它。

您收到什么错误消息?

于 2012-06-13T00:40:37.017 回答
0

可能是因为“myfolder”中的其他脚本没有执行权限。

cd myfolder
chmod 755 myscript
./myscript.sh
于 2012-06-12T18:32:36.830 回答