gpt4 book ai didi

bash - 当另一个命令的输出通过管道传递给 xdg-open 时,xdg-open 不起作用

转载 作者:行者123 更新时间:2023-11-29 09:07:40 24 4
gpt4 key购买 nike

假设我在某处有一个名为 file.ext 的独特文件。它由我的 Ubuntu 框索引,所以命令 locate file.ext 正确地给我(单个)位置,比如 /usr/local/some/place/file.ext.

所以我认为:

locate file.ext | xdg-open

将使用与文件类型关联的默认应用程序打开文件(有一个,这不是问题),就像我输入了 xdg-open/usr/local/some/place/file .ext

相反,我收到了来自 xdg-open 的“usage”消息,就好像它是在没有参数的情况下调用的一样。

所以问题是:我对管道有什么误解吗?或者这个特定命令的一些问题?

最佳答案

因为您必须将文件名作为选项传递,而不是标准输入上的数据。为此使用 xargs:

locate file.ext | xargs xdg-open

或者只是子shell:

xdg-open "$( locate file.ext )"

关于bash - 当另一个命令的输出通过管道传递给 xdg-open 时,xdg-open 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17124288/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com