
过滤需要的内容,
-v 需要排除的内容,
-i不分辨大小写,
-n匹配的内容在其行首显示行号,
-A (after)显示匹配字符串及其后n行,
-B (before)显示匹配字符串及其前n行,
-C(context)显示匹配字符串
下边是想凑字数的啦啦
*** 作系统知道文件描述符对应的设备是否可读,所以实际是由内核提供系统调用来真正实现 select 的。
一般对于通过 fopen *** 作的文件,我们没必要用 select, 首先你要把 FILE * 转成对应的文件描述符,其次对于标准文件,一般情况下读和写是 non-block 的,select主要是用来对那些会block的设备用的。当然你硬要这么用,也没问题,但是 select 对于这种文件总是会返回可读的,和缓冲区里是否有内容无关(缓冲区的实现是在用户空间的,显然内核不知道其状态)。因为即使整个文件都被读入缓冲区,由于此时描述符处于 EOF 状态, select 仍然会返回可读。
这里实在是有太多细节。 总之,不建议滥用select,对于标准文件或者单个设备的读写,完全没意义。
可以使用awk的条件筛选,这样写awk '{if($1==13 &&$2>87632565 &&$2<89632565 &&$3>87632565 &&$3<89632565)print $0}' filename.txt >newfile.txt
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)