藍森林首頁 | 返回主頁 | 本站地圖 | 站內搜索 | 聯繫信箱 |
 您目前的位置:首頁 > 自由軟件 > 技術交流 > 應用編程


    

藍森林 http://www.lslnet.com 2006年6月26日 11:18


請教一個grep的問題。

有一個很大的文本文件,現在需要在其中找出所有匹配"TestString"字符串的行以及該字符串後面10行的內容。請問如何實現?

man grep

grep -A 10 "String" file

-->
http://www.lslnet.com/linux/#forum/viewtopic.php?t=446683&highlight=wingger

回復真快。謝謝!可是我的SCO-UNIX中grep沒有-A選項?

不知道是因為版本原因還是其它原因。可否還有其它方法實現呢?或用其它命令?
我的grep幫助只有:
grep [-E|-F] [-c|-l|-q] [-bhinsvx] [-e pattern_list] [-f pattern_file] [pattern_
list] [file...]
請DX指點。

我的grep可以,,不過確實第一次用-A這個參數,,不錯,,,

-->
http://www.lslnet.com/linux/#viewthread.php?tid=624057&extra=page%3D1%26filter%3Ddigest

-->

Dont use Sco.........
:roll:

First get the number of rows
Then print .......:em02:
Try:
[code] sed -n '/String/=' file| xargs -i awk 'NR>={} && NR<={}+10' file[/code]

謝謝各位DX熱情指點。試試先!

謝謝各位DX熱情指點。試試先!

如果下面10行也含有string,該如何處理,規則定清楚才能寫:mrgreen:

-->
DX果然考慮周全。下面10行中一定不會含有要查找的string的。

[code] sed -n '/String/{N;N;N;N;N;N;N;N;N;p}'[/code]

-->

這樣10行中又有string時可能會出問題

test my BT :mrgreen:
[code]
n=0;sed -n '/text/,$p' urfile|while read i;do echo $i;((n++));[[ $n -gt 10 ]]&&break;done[/code]



Copyright © 1999-2000 LSLNET.COM. All rights reserved. 藍森林網站 版權所有。 E-mail : webmaster@lslnet.com