2017-04-18 101 views
0

我有一个目录说一个Windows机器下的BuildArea我有多个文件夹说lib,应用程序等 当我们建立java文件..各自的jar文件放置在应用程序文件夹中的lib文件夹和war/ear文件中。从windows目录和scp到最新的文件从linux服务器

我想将这些文件的scp自动化到linux服务器上。 我在这里面临的挑战是拿起最新的内置jar/ear/war文件,因为相应的文件夹有许多其他这样的文件。

例如:lib将有a.jar,b.jar等等。比方说,我只是建立最新版本a.jar文件的话,我需要拿起仅此最新a.jar文件

我最初以为的下面:

步骤1) 创建一个脚本,将接受参数从输入文本文件,该文件将具有最近构建的工件名称的列表,并且该脚本将把这些文件复制到单独的目录中。 (比如ReleaseArea)

步骤2) 另一个脚本,用于将使用上述脚本复制到ReleaseArea文件夹中的文件扫描到Linux服务器上。

但是,这涉及到人工干预,并希望有一个更有效的方法。

建议/最佳实践始终欢迎。

感谢和问候,

罗汉

回答

0

也许你能有这样的发现使用find命令这样新生成的文件(如60分钟前例如)的脚本:

find /BuildArea -mmin 60 -exec scp {} @server:/destination/path \; 

但是,如果你想从linux主机使用scp我假设你在Windows主机上有一个ssh服务器,所以你可以使用ssh来远程执行最后一个命令,然后把脚本放到每小时运行一次的cron作业中。

相关问题