如何从启动器运行 CLI 命令?

如何从启动器运行 CLI 命令?

我按下键盘上的 ALT+F2 键,调出启动器 HUD。然后我输入一个命令,就像在 shell 中一样,具体来说就是vlc ~/Music/* -Z。如果从 shell 中完成,vlc 将启动并开始播放音乐。

但是,从启动器完成操作后,VLC 会回复:

文件读取失败:

VLC 无法打开文件“/home/[用户名]/Music/*”。(没有此文件或目录)用户无法打开您的输入:

VLC 无法打开 MRL“file:///home/[用户名]/Music/%2A”。请查看日志了解详细信息。

我不太明白其中的区别是什么。

答案1

其他人指出了这一点,但随后删除了他们的答案,所以我会再次添加它。

此特定命令失败的原因是启动器不使用 shell,这意味着 VLC 实际上是在尝试加载文件命名*,而不是将星号放入文件列表中。

一种解决方法是调用 shell,正如 elmicha 在评论中指出的那样。sh -c "vlc ~/Music/* -Z"可以做到这一点。但是由于错误,此方法失败了,再次参见 elmicha 的评论。

在这种特殊情况下,由于 VLC 将递归遍历目录,因此可以使用 实现相同的结果vlc ~/Music,它无需 shell 即可正常工作,并且更加简单。

相关内容