sed/awk截取字符串

<table><tr><td>Password:</td><td>123456</td></tr><tr><td>Hash:</td><td>44efce164ab921... <table><tr><td>Password:</td><td>123456</td></tr><tr><td>Hash:</td><td>44efce164ab921caaad3b435b5140</td></tr></table> </div>
,想截取44efce164ab921caaad3b435b5140,求命令
展开
 我来答
小米飞猫
推荐于2016-06-19 · 专注于IT监控领域技术
小米飞猫
采纳数:1653 获赞数:4811

向TA提问 私信TA
展开全部
[flycat]$cat file
<table><tr><td>Password:</td><td>123456</td></tr><tr><td>Hash:</td><td>44efce164ab921caaad3b435b5140</td></tr></table></div>

[flycat]$cat file | sed 's/^<table>.*<td>//' | awk -F"<" '{print $1}'
44efce164ab921caaad3b435b5140

附送你2个:
cat file | sed 's/^<table>.*<td>//' | sed -r 's/<\/td.*$//'
cat file | awk -F"</td>" '{print $4}'|cut -c 5-
luneng8183
2011-12-08 · TA获得超过902个赞
知道小有建树答主
回答量:606
采纳率:100%
帮助的人:514万
展开全部
我给你个思路吧,试一下下边的shell脚本

#!/bin/bash

echo "<table><tr><td>Password:</td><td>123456</td></tr><tr><td>Hash:</td><td>44efce164ab921caaad3b435b5140</td></tr></table>" | awk '
BEGIN{
FS="</*td>"
RS="</*tr>"
}

{
print "1 - " $1
print "2 - " $2
print "3 - " $3
print "4 - " $4
}'
追问
$3结果是这个44efce164ab921caaad3b435b5140,怎么去掉后面的...
追答
不可能,我这里执行后是这个结果:
1 -
2 -
3 -
4 -
1 -
2 - Password:
3 -
4 - 123456
1 -
2 -
3 -
4 -
1 -
2 - Hash:
3 -
4 - 44efce164ab921caaad3b435b5140
1 -

2 -
3 -
4 -
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式