【发布时间】:2016-09-05 15:01:28
【问题描述】:
我想用 sed 或 awk 在一个大的 txt 文件的一行中选择一个特定的字符串。但我总是得到整行,每行有 100.000 多个字符。
例如:
</div><div class="follow withFollow" id="user-id-1234567890"> <a href="/app/users/id-1234567890/test/ </div><div class="follow withFollow" id="user-id-0123456789"> <a href="/app/users/id-0123456789/test/" 12345678990 1234877890 1234767890 1245456780 123456790 withFollow" id="user-id-9873456789">
我唯一想要的是:
withFollow" id="user-id-1234567890">, withFollow" id="user-id-0123456789">, withFollow" id="user-id-9873456789">
输出:
1234567890
0123456789
9873456789
我尝试了很多:
sed -n '/**user-id-**/,/**">**/p' FILE
awk '/**user-id-**/,/**">**/p' FILE
awk '/**user-id-**/,/**">**/p' FILE | grep -Eo "[0-9]{1,15}" > output.txt
对于最后一个,我在同一行中只得到了其他数字,所以不仅在id="user-id-1234567890"> 内。
【问题讨论】: