分析一道运维bash脚本题目

 今天看了下51cto的运维面试题,其中里面有一道题如下

 

这道题目我觉得这样写有点不妥

1.首先代码比较多

2.在代码中,出现awk '{print $5}' -gt 10000 这样的比较条件,很多人可能都不会记得ls命令中,文件的大小具体是第几列

3.使用了两个if显得有些复杂

 

我觉得这个脚本像这样写就可以了,如下:

#!/bin/bash

for file in `find -size +x` #按照文件的大小来查找

  do

    if [ -f $file ];then  #循环比较如果存在这样的文件

     mv $file ./tmp       #则将文件移动到tmp文件夹

    else 

     echo "没有符合条件的文件"

    fi

done

 

有不对的地方,希望大家指正。

你可能感兴趣的:(shell,脚本,script)