2013-01-03 138 views
1

我有一个shell脚本,需要使用cron自动运行。在我们的办公室里,有一台我必须登录才能使用cron的特定机器。我的问题是,我写的脚本与git交互,使用git命令来提取代码并切换分支。我可以安排cron作业的计算机和脚本正在运行从不是有混帐。当我使用git时,我有一台单独的机器登录。有没有一种简单的方法让我从cron系统运行我的脚本并运行git系统中的git部分?在两台机器上运行脚本

更新:我仍然有兴趣,如果可以做到这一点,但我的团队已经获得了新的机器,我们将成立不过我们选择,这意味着将有cron和饭桶。感谢您的任何想法

+1

听起来像是你需要有与人保持你的系统,一个字 - 要么是可以做的cron,或者设置cron其他机器上的机器上安装的git。是的,我们可以通过另一种方式解决问题,使生活变得复杂,但这似乎有点像瑞典人说的“过河取水”。 –

+1

你不需要root就可以安装git并使用它。只需下载源代码并使用适当的安装前缀将其安装到您的主目录中即可。或者获得一个静态链接的版本,并将其放在您的主目录中。 – er0

+0

@MatsPetersson哈哈我对我们的系统设置方式并不满意,最近我一直对我感到非常沮丧。感谢提示 – tcannon91

回答

1

如上面提到的一些人,ssh是这样做的方式。这是我在工作中使用了很多,收集数据来自其他服务器的bash行:

ssh -T $server -l username "/export/home/path/to/script.sh $1 $2" 1>traf1.txt 2>/dev/null 

上面的代码示例将连接到IP $服务器,为用户并运行该脚本script.sh,传递参数$ 1和$ 2。您也可以将命令输出分配给变量,而不用重定向,就像在脚本中使用其他命令一样。

PS:请注意,为了使上述工作,你将需要设置passwordless login这些机器之间。否则,您的脚本将会中断以请求密码输入,这很可能不是所需的行为。

相关问题