我在一个服务器系统上工作,不允许我存储超过50千兆字节的文件.我的应用程序需要20分钟才能生成文件.有什么方法可以将所有超过30分钟的文件从源移动到目的地吗?我试过rsync:
rsync -avP source/folder/ user@destiantionIp:dest/folder
但这不会从我的服务器中删除文件,因此存储限制失败.
其次,如果我使用mv命令,仍然生成的文件也会移动到目标文件夹,程序将失败.
最佳答案你可以使用find和-exec来实现这个目的: –根据需要将/ sourcedirectory和/ destination / directory /替换为源路径和目标路径.
find /sourcedirectory -maxdepth 1 -mmin -30 -type f -exec mv "{}" /destination/directory/ \;
基本上该命令的作用是,它试图在当前文件夹-maxdepth 1中查找30分钟前最后修改的文件-mmin -30并将它们移动到指定的目标目录.如果要使用上次访问文件的时间,请使用-amin -30.
或者,如果要查找在某个范围内修改的文件,可以使用-mmin 30 -mmin -35之类的内容,这样可以获得修改时间超过30但不到35分钟的文件.
手册页中的参考文献: –
-amin n file was last accessed n minutes ago. -atime n file was last accessed n*24 hours ago. When find figures out how many 24-hour periods ago the file was last accessed,any fractional part is ignored,so to match -atime +1,a file has to have been accessed at least two days ago. -mmin n file's data was last modifIEd n minutes ago. -mtime n file's data was last modifIEd n*24 hours ago. See the comments for -atime to understand how rounding affects the interpretation of file modification times.
总结 以上是内存溢出为你收集整理的linux – 移动30分钟的文件全部内容,希望文章能够帮你解决linux – 移动30分钟的文件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)