方法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