我们说我有这个文件(名为file_1的文件),其中包含:
{
"a":100,
"b":2045,
}
如何只保留数字100?
我已经尝试过命令(grep" a" | cut -d':' -f 2)
但我只想要100.我该怎么做?
答案 0 :(得分:1)
您的命令会生成100,
。你需要的只是又一步。有几种选择:
,
的剪切,选择第一个字段:grep "a" | cut -d ':' -f 2 | cut -d ',' -f 1
grep "a" | cut -d ':' -f 2 | sed "s/,//g"
grep "a" | sed -E "s/.*:(.*),/\1/g"
:
:
和,
之间的一部分\1
:这是在括号内匹配的搜索部分,此处是:
和,
之间的数字sed -E -n '/"a":/ {s/.*:(.*),/\1/g; p }'
/"a:"/
定义匹配,大括号中的以下部分定义了行匹配时应该执行的操作,此处重写,如上所述,然后使用p
打印重写的行。