{"list":[{"fs_id":4176732013,"path":"\/apps\/zjhui\/bash","ctime":1389845838,"mtime":1389845838,"block_list":"[\"286dc423e71186936c39e3507d2d0cf1\"]","size":2076,"isdir":0,"ifhassubdir":0,"filenum":0}],"request_id":2785468470}
有这么一串,我想利用sed将"isdir":0这里的0单独取出来。利用如下命令:sed -n 's/"isdir":\(.*\)/\1/p'
发现匹配出来的是:
{"list":[{"fs_id":4176732013,"path":"\/apps\/zjhui\/bash","ctime":1389845838,"mtime":1389845838,"block_list":"[\"286dc423e71186936c39e3507d2d0cf1\"]","size":2076,0,"ifhassubdir":0,"filenum":0}],"request_id":2785468470}
isdir没了。而我想要的是isdir后面那个0(这个数字也有可能是1)
求解!
这样也行,sed -n 's/.*"isdir":\([01]\).*/\1/p'
。把前后无关的一堆东西都删掉。如果不是0或者1,是个整数,就写成sed -n 's/.*"isdir":\([0-9]*\).*/\1/p'
。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。