比如:
[
{"ip_port": "11.12.13.14:80", "user_pass": ""},
{"ip_port": "11.12.13.14:80", "user_pass": ""},
{"ip_port": "11.12.13.14:80", "user_pass": ""},
]
重新输出为
[
{"ip_port": "11.12.13.14:80", "user_pass": ""},
{"ip_port": "11.12.13.14:80", "user_pass": ""},
{"ip_port": "11.12.13.14:80", "user_pass": ""}
]
提供一个渣实现:
```
sed "$((`cat 1.txt|wc|awk '{print $1}'`-1))"s/', *$'// 1.txt
```
楼下继续
[email&cat test.txt
[
{"ip_port": "11.12.13.14:80", "user_pass": ""},
{"ip_port": "11.12.13.14:80", "user_pass": ""},
{"ip_port": "11.12.13.14:80", "user_pass": ""}
]
[email&cat test.txt|sed 's/},\s]/}\n]/'
[
{"ip_port": "11.12.13.14:80", "user_pass": ""},
{"ip_port": "11.12.13.14:80", "user_pass": ""},
{"ip_port": "11.12.13.14:80", "user_pass": ""}
]
[email protected]:~$
tac|sed '2s/},/}/g' aaa.txt|tac > aaa.txt
哈哈哈原来还能这样……
gsed -n 'x;1d;$!p;${s*$游戏最好玩了,不过我这个感觉太冗长了,不知道有没有高手可以给个精炼点的
额。笔误写反了 tac aaa.txt|sed '2s/},/}/g' |tac 这样就好了
sed $[$(wc -l file)-1]'s/,//g'
更正: sed $[$(wc -l < file)-2]'s/,//' file
echo 'Gk$xZZ' > /tmp/$$ && vim -s /tmp/$$ input.file
#TIL
为什么要用 shell 处理一个 json ,况且 json 最后一个逗号是可有可无的?
目标是原来有一个 IP 列表 1.1.1.1:80 ,用 curl 测试可用性,把可用的保存为一个 json 样式
非可有可用 用 python 的 json.loads 有最后一个逗号会报错
可能我给记混了, perl 里的 array/hash 的最后一个元素后的逗号是可有可无的, json 的好像没有最后一个逗号的。
你这个好厉害,看了半天 man page 终于弄明白原理。
https://gist.github.com/Arthur2e5/58717a25f931715d3203