如何在linux终端运行脚本,如何在不关闭终端的情况下运行脚本?

问题描述

我在文件bla.sh中有一个脚本,它是可执行的。单击它时,将执行脚本并关闭窗口。我希望窗户保持开放状态。

类似于Windows中的命令cmd /k** command。

附:我不想使用pause,但我希望能够在执行脚本后编写更多命令。

最佳解决方法

将$SHELL放在脚本的末尾:

55f808edf46672139ca56406de8243ea.png

一个小缺陷:由于gnome-terminal未运行bash作为它的shell,它会将其视为一个应用程序并在您尝试关闭终端时显示警告:

There is still a process running in this terminal

Closing the terminal will kill it.

我发现没有好办法隐藏这个警告。如果需要,可以通过运行完全禁用它:

gconftool --set /apps/gnome-terminal/global/confirm_window_close --type boolean false

如果您使用的是xterm而不是gnome-terminal,则不会发生这种情况。它应该打扰你。

次佳解决方法

使用Gnome终端

使用gnome-terminal附加;在命令字符串末尾使用bash并使用-c选项调用脚本。例如:

gnome-terminal -e "bash -c ~/script.sh;bash"

这样做如下:

打开gnome-terminal

执行脚本script.sh

脚本完成后显示bash提示符。

您可以通过关闭窗口退出gnome-terminal窗口,或在bash提示符下键入exit。或者您可以按要求键入更多命令。

第三种解决方法

如果您有权访问该脚本,则最后还可以添加以下代码:

read

该代码将在关闭前等待输入,因此终端将保持打开状态,直到您按Enter键。

第四种方法

如果您使用的是xterm,请使用-hold。

第五种方法

使用bash的--init-file选项和临时管道:

bash --init-file ')

例如:

bash --init-file

第六种方法

使用xterm并在命令字符串末尾附加;bash。例如:

xterm -e "bash ~/script.sh;bash"

这样做如下:

打开xterm

执行脚本script.sh

脚本完成后显示bash提示符。

您可以通过关闭窗口退出xterm窗口,或在bash提示符下键入exit。或者您可以按要求键入更多命令。

参考资料

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值