LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 946|回复: 8

如何查看某命令man页面中特定的选项段?

[复制链接]
发表于 2003-8-20 18:09:47 | 显示全部楼层 |阅读模式
比如,命令iptables有一个选项-m,现在想查看一下“-m”选项是什么意思,可以基于如下思路来解决,其man页面中应有一行是以空格开头,然后跟-m,那么,查看这行以及以下的几行就OK了。

用perl可以如下解决:

man iptables | col -b | perl -e 'while (<>) { $n=3 if (/^\s*-m/) ;\
print if ($n-->0); } '

我现在正在学awk 和sed,不知道用他们或者其它shell命令组合应该如何解决,请指教,谢谢。
发表于 2003-8-20 19:06:19 | 显示全部楼层
有那么复杂吗?
man iptables|grep "\-m"
不就OK了嘛!;)
发表于 2003-8-20 19:10:13 | 显示全部楼层
man iptables
/ -m

可以直接搜索的嘛 :p
发表于 2003-8-20 19:19:18 | 显示全部楼层
呵呵,严重同意楼上的
 楼主| 发表于 2003-8-21 17:37:05 | 显示全部楼层
上面举出的iptables那个选项的例子只是一个特定的例子,在这种情况下使用楼上给出的办法是可行的。
不过如果这一选项的字符多次在man页面中出现,比如对于man bash,要查某一关键字,那么结果便很不理想了。用grep是可以定位匹配在某行开头出现的,但是在man页面中查看的时候,用/-m无法定位出现在某行开头,只是定位匹配而已。
 楼主| 发表于 2003-8-21 17:38:44 | 显示全部楼层
如果用man iptables查看,想用\-m相似的方法定位匹配行首,不知道有办法吗?
发表于 2003-8-21 20:04:22 | 显示全部楼层

/^  *-i
可以
发表于 2003-8-21 20:16:19 | 显示全部楼层
严重同意 :cool:

grep, vi, sed, awk ... 里用的搜索和man里的都是差不多的,
都可以用 regex (正则表达式)
 楼主| 发表于 2003-8-22 11:20:32 | 显示全部楼层

/^ *-i
可以


严重同意,ft,这么简单!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表