簡體   English   中英

如何基於時間戳從大文本文件中刪除記錄?

[英]How to delete records from huge text file based on timestamp?

我有一個巨大的文本文件(例如egugetextfile.txt),其中包含遵循以下模式的文件名(日期格式為YYYYMMDDHH24MISS):

filename1-20130910120756.txt
filename2-20130910150156.txt
filename3-20130911190256.txt
filename4-20130912010756.txt
filename5-20130914020756.txt

如何從hugetextfile.txt中刪除比某些時間戳新的文件名,例如20130912000000?

awk -F"-" '{t=20130910130000;split($2,a,"\.");}a[1]>t' your_fle

更新您的評論:這應該起作用。 此命令將替換文件並刪除所有行。

perl -i -lne 'if(/-(\d*)\.txt/){print if($1>20130910130000)}' your_file
sed -i "/20130912[00-23][00-56][00-56]/d" fileName.txt

var= awk -F“-”'{t = 20130912130000; split($ 2,a,“。”);} a [1]> t'hugetextfile`

為$ var中的j做sed“ / $ j / d” -i hugetextfile done`

在這里,變量var保存了hugetextfile中高於20130912130000的文件名列表。 並且for循環用於從hugetextfile中一一刪除那些文件名

問候,VPK

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM