将命令输出输送到 zathura 时遇到问题

将命令输出输送到 zathura 时遇到问题

zathura 手册页指出

zathura 显示给定的文件。如果给出单个连字符减号 (-) 作为文件名,则将从标准输入读取内容。如果没有给出文件,则会启动一个空的 zathura 实例。

事实上,如果我运行命令,这在 bash 中是有效的cat document.pdf | zathura -。但是,我无法将其推广到其他情况。具体来说,如果我创建一个仅包含 的文件夹document.pdf,运行该命令ls | zathura -会返回错误,指出 zathura 无法确定文件类型。为什么是这样?我是否误解了管道的工作原理?

答案1

cat document.pdf | zathura -

管道内容document.pdfZathura,它试图渲染它。

ls | zathura -

如果你只有document.pdf目录,没有其他东西,可以将字符串传递document.pdf给 Zathura,而不是它的内容,所以 Zathura 抱怨道。此外,如果你尝试编写一个程序并且涉及到解析ls,你很可能做错了。

相关内容