让我们假设我们有一个这样的字符串:如果条件不匹配,awk删除行并复制到日志文件?
383;06;55.270989;144991494994851A5485AA54J7HH337H3H33HT570BBG7BBGBT07BT7R55U155U5IR75I79QQ9SQQ9Q597Q57S229122928S4284;N
但下文件,我们会遇到这样的事情:
383;06;55.270989;||<FD><F0>p|/x|<A9>|<E2>|,|<F7>|l|[email protected]<F5>q|I|b%<EB><AB><C2>l|F|<D7>%|<C0><E4>wy||z<BE>|;|b<E5>&x"h<D1>e|j|E|c|<F4><E1>
<C2>4^|Q|<EF>H|<E0>2t<C2>6'<E4><C7>||Z|<E0>q|9d|;N
是否有一种方式来运行这一点,并说,如果txt文件不有x个字段(分隔符;)或将其从文件中删除并将其放在日志文件中?
编辑:该方法还包括具有日志正被用于以后的分析取出
如果决定是基于字段数,'awk'是不错的选择..如果你只是想跳过基于线字符,说''''或'<''那么你可以使用'grep' ...无论哪种方式,给它一个镜头......大量的重复 – Sundeep
决定基于字段的数量,但我还没有想法从哪里开始:( – jycr753
https://www.gnu.org/software/gawk/manual/gawk.html是最好的开始...使用https://www.gnu.org/software/gawk/manual /gawk.html#Patterns-and-Actions和https://www.gnu.org/software/gawk/manual/gawk.html#Field-Separators – Sundeep