将 MacOS 上的手册页通过管道传输到编辑器中

将 MacOS 上的手册页通过管道传输到编辑器中

在 Mac OS 上使用bash来编辑一些man页面供我自己使用。

在 Mac OS 中,该命令open -t filename将在系统默认的文本编辑器中打开指定的文件。

$ man somepage | col -b

将正确呈现指定man页面。我想做的是在文本编辑器中打开渲染的手册页。我可以按如下方式完成此操作:

man somepage | col -b > filename && open -t filename

我可能应该对此感到满意,但我的大脑认为必须有一种“更好的方法”仅使用管道和重定向来完成此操作。另外,上面的命令往往会在我的文件系统中“乱扔”我可能不需要保留的文件 - 因此需要另一个步骤来删除这些残留物。理想情况下,我可以在编辑器中打开渲染的手册页,而无需文件名或在每次调用时都会被覆盖的通用文件名。我已经花了大约一个小时来思考这个问题,尝试不同的事情,但无济于事。

对我来说最有意义的是:

$ open -t < man somepage | col -b

或这个:

$ open -t &1 < man somepage | col -b

但这当然是行不通的,因为 shell 将其man作为文件名。我是否已经接近做对了?我的尝试是不是很愚蠢?

答案1

您可以传递open-f标志以让它从标准输入读取内容并在文本编辑器中打开它们,这使得它可以在管道中使用。

所以像这样的事情应该做你想要的:

man somepage | col -b | open -tf

也可以看看:

相关内容