【发布时间】:2013-05-11 22:16:43
【问题描述】:
我需要将下面的 awk 命令转换成 sed,awk -F ',' '$2 ~ /^ *[0-9]*(\.[0-9]+)?" *$/{sub(/"/, "", $2); print $2}'
下面是我的输入文件:
sample.txt:
3",3"6-position,6-position7' 4" to 10' 3-1/2",7' 4" to 10' 3-1/2"4.8",4.8"Adjustable from 99" to 111" - max 148,Adjustable from 99" to 111" - max 148
我需要如下输出,
输出.txt:
3",36-position,7' 4" to 10' 3-1/2",4.8",4.8Adjustable from 99" to 111" - max 148,
所以基本上我需要打印 " 符号的数值,其他非数字文本需要用空行替换,awk 命令的问题是 2,3 和 5 行被删除。
【问题讨论】:
-
真的很好,你的 awk 代码中都有
-F ','和$2。但我在您的输入文件中找不到任何逗号。您是否复制了错误的 awk 行? -
您有完美的
sed解决方案作为您之前问题的答案,这完全一样...... -
不,@AdrianFrühwirth,Sed 命令不起作用