我有六年(2011-2016年)的文本文件。我只想提取所有六年的四月和五月的数据。
@STATION_ID,LATITUDE,LONGITUDE,TIME(GMT),DATE(GMT),AIR_TEMP(°C)
IMDE1611_14164B(PITAMPURA),28.7,77.15,0,08/09/2011,33.5
IMDE1611_14164B(PITAMPURA),28.7,77.15,1,08/09/2011,33.3
IMDE1611_14164B(PITAMPURA),28.7,77.15,2,08/09/2011,33.8
IMDE1611_14164B(PITAMPURA),28.7,77.15,3,08/09/2011,33.8
IMDE1611_14164B(PITAMPURA),28.7,77.15,4,08/09/2011,34.5
IMDE1611_14164B(PITAMPURA),28.7,77.15,5,08/09/2011,35.0
IMDE1611_14164B(PITAMPURA),28.7,77.15,6,08/09/2011,34.9
IMDE1611_14164B(PITAMPURA),28.7,77.15,7,08/09/2011,35.4 我使用grep和sed命令过滤数据,但它没有显示我想要的结果。我使用以下命令:
grep "??-0[4-5]-????" filename.txt > filename.csv
sed -n '/2016-04-01/,/2016-04-30/{/2016-04-30/d; p}' my_delhi.txt
sed -n '/2016-04-01/,/2016-04-30/p' my_delhi.txt发布于 2017-06-03 15:45:50
您可以使用其他的东西代替/作为sed的S分隔符。
sed -n '\:08/09/2011:p' file或以regex和“#”作为分隔符:
sed -nr "\#,[0-9]{2}/[0-9]{2}/[0-9]{4},#p" file仅4月和5月(dd/mm/yyyy):
sed -nr "\#,[0-9]{2}/0[45]{1}/[0-9]{4},#p" file或(mm/dd/yyy)
sed -nr "\#,0[45]{1}/[0-9]{2}/[0-9]{4},#p" filehttps://askubuntu.com/questions/921705
复制相似问题