通过ssh远程登录时,无法从Shell脚本启动新的gnome终端

克里斯·基瑟(Chris Keeser)

背景:我通过Windows计算机上的Putty SSH进入Linux计算机。我在Windows上运行VcXsrv,并通过SSH转发X。这一切都按预期进行。

通过bash脚本执行命令时,我遇到在新显示器上打开gnome-terminal的问题

当我直接在控制台上执行这些命令时,新的终端服务器将启动,并且我能够启动连接到服务器的gnome终端会话。

$ /usr/libexec/gnome-terminal-server --app-id my.foo &
[1] 29553
$ gnome-terminal --app-id my.foo
$

但是,当我将相同的命令放入外壳脚本时,出现以下错误:

startGnomeTerm.sh的内容

#!/bin/bash
/usr/libexec/gnome-terminal-server --app-id my.foo &
gnome-terminal --app-id my.foo

执行脚本时

$ ./startGnomeTerm.sh
# Error creating terminal: The name my.foo was not provided by any .service files

我什至尝试通过执行与脚本共享所有shell变量

$ export > shell_vars

然后将其放置在脚本的开头。

#!/bin/bash
source shell_vars
....

-更新-

解决方案是在命令之间增加一些延迟。设置服务器所花费的时间超过了脚本所允许的时间,因此终端尝试在服务器实际运行之前进行连接。

工作脚本:

#!/bin/bash
/usr/libexec/gnome-terminal-server --app-id my.foo &
sleep 0.5
gnome-terminal --app-id my.foo
修补

如上所述:时间问题;在终端服务器启动与打开新终端之间引入睡眠。:)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Shell通过ssh脚本化远程命令

来自分类Dev

Gnome终端无法启动

来自分类Dev

通过SSH远程启动

来自分类Dev

从其他终端中的ssh启动的shell脚本中的su

来自分类Dev

如何启动并通过SSH远程运行脚本?

来自分类Dev

通过SSH在远程Shell脚本执行中分配变量

来自分类Dev

Gnome终端3.22无法启动

来自分类Dev

从Mac中的脚本启动新终端时设置PATH

来自分类Dev

通过ssh登录到服务器时无法创建新屏幕

来自分类Dev

Shell脚本无法通过终端打开LimeChat

来自分类Dev

通过SSH远程触发的Bash脚本无法正常工作

来自分类Dev

在Mac OS(OS X)中登录时启动Shell脚本

来自分类Dev

无法通过SSH登录

来自分类Dev

如何打开新的启动命令的gnome终端?

来自分类Dev

无法通过终端启动nodeapp

来自分类Dev

通过SSH远程打开GNOME会话

来自分类Dev

当使用`gnome-terminal`打开一个新终端时,ZSH没有启动。

来自分类Dev

如何通过ssh禁用远程root登录?

来自分类Dev

通过ssh进行远程root登录

来自分类Dev

登录时Windows终端自动启动

来自分类Dev

每次启动新终端时,如何使用特定的gnome终端配置文件,例如(base-16-default-dark)?

来自分类Dev

如何重新启动gnome shell,但通过脚本将其守护进程?

来自分类Dev

无法通过publickey ssh登录

来自分类Dev

如何通过SSH在远程主机上运行本地(非Shell)脚本?

来自分类Dev

如何通过SSH在远程服务器上运行本地Shell脚本?

来自分类Dev

如何通过SSH在远程主机上运行本地(非Shell)脚本?

来自分类Dev

如何使用Shell脚本通过SSH删除远程计算机上的文件?

来自分类Dev

如何通过SSH在远程服务器上运行本地Shell脚本?

来自分类Dev

如何通过SSH启动远程firefox窗口?

Related 相关文章

热门标签

归档