exec bash最后使用

exec bash最后使用

我有这个脚本

#!/bin/bash
cd /home/user/somedir
pwd

它按预期工作,但我希望这个脚本将我传送到 /home/user/somedir,但我留在同一个目录中。

如何编写脚本将我(在 gnome-terminal 中)传送到 /home/user/somedir?

答案1

您需要source脚本。否则,它将在单独的子 shell 中运行,更改子 shell 的工作目录,但不会更改运行脚本的 shell 的工作目录。

获取来源:

. myfile.sh

或者

source myfile.sh

您可以阅读更多这里

答案2

exec bash最后使用

bash 脚本在其当前环境或其子环境上运行,但从不在其父环境上运行。

然而,人们经常会问到这个问题,因为人们希望在从另一个目录执行 bash 脚本后留在某个目录的 bash 提示符下。

如果是这种情况,只需在脚本末尾执行一个子 bash 实例:

#!/bin/bash
cd /home/user/somedir
exec bash

相关内容