![Sed 命令过滤多余文本/删除](https://linux22.com/image/128302/Sed%20%E5%91%BD%E4%BB%A4%E8%BF%87%E6%BB%A4%E5%A4%9A%E4%BD%99%E6%96%87%E6%9C%AC%2F%E5%88%A0%E9%99%A4.png)
"GET /?add=jt1777,justine,tignor,f,November_24_1983,Skeleton_,Italy HTTP/1.1" 200 34053
有谁知道如何使用 sed 命令来删除多余的行或进行过滤
"GET /?=jt1777,f,November_24_1983,Skeleton_,Italy HTTP/1.1" 200 34053"
但仅包含名称"justine, tigor"
。这就是我所需要的,只是名字和姓氏。
有任何想法吗???
答案1
也许可以应用“仅剪切”字段 2 和 3 之类的内容:
echo ..... | cut -d, -f2,3
答案2
您可以使用awk
echo "\"GET /?add=jt1777,justine,tignor,f,November_24_1983,Skeleton_,Italy HTTP/1.1\" 200 34053" | awk -F, '{print $2","$3}'
解释:
-F,
这里你用分隔文本,
'{print $2","$3}'
您将打印分隔符内的字段 2 和 3,
。如果您想打印逗号,因为它被用作分隔符,所以它不会打印,所以您必须对其进行硬编码","