有没有办法运行一个bash文件,它也在本地和服务器终端执行命令

时间:2018-03-06 06:21:20

标签: bash mongodb

我正在运行bash文件以在每日bases上进行Mongo转储。但是在本地目录中我正在运行一个连接到服务器终端的bash文件。在服务器终端中我正在运行另一个使Mongo转储的文件。

但是是否可以创建一个连接到MongoDB服务器终端并在服务器上运行命令的文件。

我尝试了很多命令,但是无法使用一个bash文件在服务器终端上运行命令,当服务器终端打开时,左边的命令不会执行。

是否可以在服务器上执行一个bash文件并执行服务器命令。?

2 个答案:

答案 0 :(得分:0)

使用以下命令远程连接到您的数据库:

mongo --username username --password secretstuff --host YOURSERVERIP --port 28015

然后,您可以通过在bash脚本中包含您可以从任何地方运行的相关命令(包括上述命令)来自动执行此操作。

答案 1 :(得分:0)

为了解决上述问题,Matias Barrios的回答似乎对我来说是正确的。您不在服务器上使用脚本,而是使用本地计算机上连接到服务器服务并管理它们的工具。

然而,要在远程服务器上执行脚本,您可以使用ssh。在您的情况下,这不是正确的解决方案,但请回答标题中的问题。

ssh myuser@MongoServer ./script.sh param1

这可以在本地脚本中使用,并在服务器MongoServer上执行script.sh(使用param1和),具有用户myuser的系统权限。

事先,不要忘记使用

来避免密码请求
ssh-copy-id myuser@MongoServer

这会将您的ssh公钥复制到MongoServer的myuser目录中