shell小技巧(四)将当前目录下大于10K的文件转移

方法1:用find+循环来实现
#!/bin/bash

fileinfo=`find -maxdepth 1 -type f -size +100k`

#echo ${fileinfo}

for i in $fileinfo;do

#echo ${i}

mv ${i} /tmp

done
此方法思路简单,将文件找到存如数组中,然后使用for in循环每次取出一个执行mv
方法2:用find -exec选项实现
 find -maxdepth 1 -type f -size +10k -exec mv {} /tmp \;
此方法利用find的-exec实现,找到一个执行一次mv
注:这里只对当前目录进行了文件移动,子目录没做。

方法3:这次不用find,用ls+awk实现

for fileinfoin `ls -l | awk '$5>10240  {print $9}'`

do

 mv  $fileinfo /tmp

done

发布了53 篇原创文章 · 获赞 3 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/bigwood99/article/details/104986099
今日推荐