当超过X行数时,将输出移动到新文件

时间:2013-07-25 20:18:51

标签: bash

我有一个创建大量行的脚本。

之后,比方说10000行,我需要它自动将文本文件移动到另一个名称。我似乎无法弄清楚,但我想使用“while”“wc”和“mv”可能会使它成为可能。

我想把它放在我的bash脚本中,所以如果文本文件是10000行或者超过10000行,它将移动到list1然后当该列表达到10000时,它将移动到list2等。

1 个答案:

答案 0 :(得分:0)

可能是这样的:

#!/bin/bash

while [ 1 == 1 ]
do
     NUMLINES=`wc -l < path_to_file`
     if [ "$NUMLINES" -gt 10000 ]; then
        cat path_to_file >> path_to_backup_file_1
        rm path_to_file
        NUMLINES=`wc -l < path_to_backup_file_1`
        if [ "$NUMLINES" -gt 10000 ]; then
           cat path_to_backup_file_1 >> path_to_backup_file_2
           rm path_to_backup_file_1
        fi
     fi
     sleep 10
done
~