我有问题。我有一个文件。此文件包含大约100行,每行是IPv6地址。我的任务是剪切它位于块的第一个位置的0或者如果它只包含0则删除整个块。 这是一个例子: 原文:
2001:0db8:03cd:0000:0000:ef45:0006:0123
修改:
2001:db8:3cd:::ef45:6:123
提前举手。
答案 0 :(得分:0)
尝试:
awk '{for(i=1; i<=NF; i++) sub(/^0+/,x,$i)}1' FS=: OFS=: file
或
perl -pe 's/(^|:)0+/$1/g' file