bash,获取具有特定列条件的行表单文件

时间:2017-11-22 15:11:41

标签: bash awk sed

我有两列文件,例如此文件的行如下所示:用户名,数据

username,20150706

我正在尝试获取第二列中的日期比例如旧的行。 20151231.

编辑,解决方案:我想在循环中执行此操作并读取日期(文件的第二列),然后将其与其他日期进行比较,例如。 20151231.然后,如果日期比20151231更旧说写整行(用户名,日期)到文件。以下是我的表现方式:

date1=20151231
while read -r line;
    do
            date2=$(echo $line | cut -d "," -f2);
            if (( date2 < date1 ));
                    then
                    echo "$line" >> filename2;
            fi
    done < filename

所以解决了一个小问题:)

提前感谢任何建议。

1 个答案:

答案 0 :(得分:1)

你可以用awk解决这个问题:

awk -F',' -v threshold=20151231 '$2<=threshold' file

希望这可以帮到你!