ファイルサーバのファイルの世代バックアップのシェルを作らなければならなくて困ってます。

(1)バックアップ作成、ログ取得
# cd /backup   (←作ったDIR)
# tar cvfz backup`date +%Y%m%d`.tar.gz --atime-preserve /home >bulog`date +%Y%m%d`.txt

(2)現在のファイルを取得
# ls -1 | grep backup[0-9][0-9][0-9][0-9][0-1][0-9][0-3][0-9] > now_data.txt

(3)7世代までのファイルを取得
# tail -7 now_data.txt >days_data.txt

(4)2つのファイルを比較、削除ファイル抽出
# diff now_data.txt days_data.txt > differ_data.txt

(5)差分を消す        ←今ここ
# ??? differ_data.txt

な感じで考えてみましたが、行き詰ってます。
diffで差分を拾ってきた結果↓から
-----
[root@xxxxx backup]# cat differ_data.txt
1d0
< backup20050709.tar.gz
-----
1d0 とか < とかを省いて「backup????????.tar.gz」の部分だけを拾ってきたリストを作って、
「rm -f < differ_data.txt」みたいに一発で消せる様に出来ないものなのでしょうか。

#もっとスマートな方法が有ったら教えてくだちぃ…。