如何以编程方式打开终端应用程序,如Gnome终端,并运行cd /some/path; source ./setup.bash
?我正在尝试编写一个脚本,它将自动启动一些通用终端和IDE以便工作。以编程方式打开Gnome终端并运行命令
我想:
gnome-terminal --tab --working-directory="/some/path" -e 'source ./setup.bash'
,但会启动GNOME终端窗口,而该窗口会显示错误:
Failed to execute child process "source" (No such file or directory)
据推测,这是因为它没有执行在bash命令,所以我改为设法:
gnome-terminal --tab --working-directory="/some/path" -e 'bash -c "source ./setup.bash"'
然而,似乎做什么都没有。它不会启动窗口,也不会生成任何stdout或stderr输出。
我能得到的最接近的是:
gnome-terminal --tab --working-directory="/some/path" -e 'bash -c "source ./setup.bash; bash -i"'
会启动GNOME终端,似乎正确地源setup.bash
,但一些终端格式由setup.bash
设置不显示,可能是因为我启动一个新的bash
外壳。
有没有更好的方法?
这似乎并不奏效。如果我尝试'gnome-terminal --tab --working-directory =“/ some/path”-x'bash -i -c“source ./setup.bash”''我得到错误'执行子进程失败“bash -i -c”source ./setup.bash“”'正如我在我的问题中所暗示的,我不希望标签结束。 – Cerin
您是否尝试了如下,gnome-terminal -x“bash”-c“command”为我工作。请注意-x参数值上的引号。 – Harini