grep在Linux与Unix下的区别
通过grep可以在指定的文本中将某个字符串给我搜出来,并且将其上下指定行数也给查询出来,如下:
grep -10 '15130fe9-8514-4fdc-ab20-38746b0068ad' server01.log >abc.xml
在Linux下可以执行没有问题, 但是在UNIX下执行有问题;
在UNIX下只能是
grep '15130fe9-8514-4fdc-ab20-38746b0068ad' server01.log >abc.xml
如何在Unix下将之前字符串的上下N行给搜出来,谢谢大拿们;
------解决方案--------------------unix 上 grep 没有 -A -B -C 选项吗?
------解决方案--------------------uname -a
把结果贴出来看看
------解决方案--------------------man grep慢慢看!
------解决方案--------------------
算了,不等你啦。
如果是Solaris,试试/usr/xpg4/bin/grep
如果是HP-UX或者AIX,那就不要指望grep了,一般是用sed/awk来搞定。
------解决方案--------------------sed我不是很会用,这样试试行不行
sed -n '/15130fe9-8514-4fdc-ab20-38746b0068ad/=' server01.log
抓到行数
然后根据这个行数比如说n,你要找之前10行之后10行的,令p=n-10,1=n+10
sed -n "${p},${q}p server01.log"