shell脚本实例一,移动文件夹中大于2000B的文件到另一个文件夹

shell脚本能帮我们简化linux下的一些工作,现在有个需求,把TMPA文件夹下大于2000B的文件都移动到TMPB下

      1 #! /bin/bash
      2 
      3 function movefiles()
      4 {
      5    for file in `ls $1`
      6       do
      7         if [ `stat -c %s $1"/"$file` -gt 2000 ]
      8          then
      9                 mv $1"/"$file  $2"/"$file
     10         fi
     11       done
     12 }
     13 
     14 movefiles "/home/jimmyxu/TMPA" "/home/jimmyxu/TMPB"

脚本很简单,使用for循环遍历第一个输入路径下的文件,使用stat获取文件的属性值,大于2000就把文件移动到第二个输入路径下

注意点:

1. 比较中[]和里面参数要使用空格分开

2.这个函数不能用于文件夹下还有子文件夹

扩展下,如果要求是移动日期过久文件应该如何做。

获取文件日期:stat -c %x $1"/"$file|awk '{print $1}'

日期比较:把字符串格式日期转换成时间戳,然后进行比较 da=`date -d "$strdate" +%s`

原文地址:https://www.cnblogs.com/jammy/p/3529767.html