awk 正则表达式示例
awk regex example
输入格式:
"130234":"f",
"130235":"m",
"130236":"f",
"130237":"f",
我想使用 awk 命令将上面的文件输入转换为下面的输出。
1. 截断最后一个“,”并用大括号括起来。谁能帮我解决这个问题。
{"130234":"f",
"130235":"m",
"130236":"f",
"130237":"f"}
您应该使用 sed
进行这种简单的替换:
$ sed '1s/^/{/;$s/,$/}/' file
{"130234":"f",
"130235":"m",
"130236":"f",
"130237":"f"}
通过awk,
$ awk 'BEGIN{printf "{"}{if (a) print a; a=[=10=]}END{sub(/,$/, "}");print}' file
{"130234":"f",
"130235":"m",
"130236":"f",
"130237":"f"}
输入格式:
"130234":"f",
"130235":"m",
"130236":"f",
"130237":"f",
我想使用 awk 命令将上面的文件输入转换为下面的输出。 1. 截断最后一个“,”并用大括号括起来。谁能帮我解决这个问题。
{"130234":"f",
"130235":"m",
"130236":"f",
"130237":"f"}
您应该使用 sed
进行这种简单的替换:
$ sed '1s/^/{/;$s/,$/}/' file
{"130234":"f",
"130235":"m",
"130236":"f",
"130237":"f"}
通过awk,
$ awk 'BEGIN{printf "{"}{if (a) print a; a=[=10=]}END{sub(/,$/, "}");print}' file
{"130234":"f",
"130235":"m",
"130236":"f",
"130237":"f"}