对于启动脚本,我想在 Ubuntu 系统上打开多个终端窗口,并在每个窗口中执行一些命令。其中一些命令需要加载文件。通常我这样做
$ source path/to/file.sh
然后打电话给我的
$ MY_COMMAND
但是,如果我打开一个新控制台:
konsole -e "source path/to/file.sh; MY_COMMAND"
我收到错误消息“源”不是可执行文件。已经发现“源”实际上是 shell 中内置的东西,但是直接从 bash 打开外部终端时有没有办法实现相同的目的?
非常感谢:)
答案1
您需要将 shell 作为要运行的可执行文件传递konsole
:
konsole -e bash -c 'source path/to/file.sh; MY_COMMAND'
现在konsole
知道要运行什么命令(在本例中bash
),并且-c
带有命令的选项将bash
作为其命令输入传递来运行。