Linux中konsole命令的混乱

Linux中konsole命令的混乱

我试图在打开一个新的 konsole 终端和源文件后打开它。我尝试了以下命令:

konsole -T hello --noclose -e "source file"

我希望终端在获取文件后保持打开状态,但即使--noclose新的 konsole 也会关闭。如何保持 konsole 保持打开状态

答案1

我猜你想在运行源文件后进行交互式会话。

konsole 使用 system() 或 popen() 调用来执行 -e 参数。 source 是 bash 内置函数,所以你不能直接调用它。

很难告诉 bash 启动命令然后启动交互式会话。有 --init-file 和 --rc-file 选项,但将使用它们而不是常用的配置文件。这可能会带来不方便。

我认为这个 shell 脚本适合你。

#!/usr/bin/env bash
source file
exec bash    

将其放入文件“script.sh”中,使其可执行并以这种方式启动

# Edit script.sh
chmod +x script.sh
konsole -e ./script.sh

我猜你在文件中设置了一些变量。如果在交互式会话中使用,则应将其导出。

export VAR=value

或者,如果您不需要交互式会话,您可以使用此脚本

#!/usr/bin/env bash
source file
echo "Press enter to exit"
read   

出色地。 konsole 中也可能存在错误。或许我们应该报告一下。

相关内容