3

我尝试了以下命令find ~/dir1 *.m4a | play

目录 dir1 中正好有 1 个 m4a 文件,我想播放它但是我从播放中得到一个使用错误。为什么?

4

5 回答 5

3

您编写的内容指示将 find 命令(一个 m4a 文件)的输出作为下一个命令 play的输入发送。

现在,我不知道那出戏究竟是什么,但最有可能的是,它的语法是这样的:

play filename

但是你写的翻译成:

play < "filename"

所以,你可能想要做的是使用像 xargs 这样的命令,它会做到这一点:

find ~/dir1 *.m4a | xargs play

结果是:

play foundfile1 foundfile2 ...
于 2012-06-15T10:56:56.700 回答
2

可能玩不使用 STDIN 所以你必须使用 xargs

 find ~/dir1 \*.m4a |xargs play
于 2012-06-15T10:58:36.237 回答
1

您正在尝试通过管道传输文件的内容(即通过 STDIN 发送)。据我从播放手册页中可以看出,它不能做到这一点。

您想发送找到播放的文件名,如下所示:

找到 ~/dir1 *.m4a | xargs 玩

于 2012-06-15T10:59:05.247 回答
1

采用find -name *.mp4 -exec play {} /;

于 2012-06-15T11:02:41.047 回答
-1

尝试另一种方式:

play ~/dir1 *.m4a

如果不工作 - 检查播放是否支持 m4a

或尝试在您的 pip 行中使用 xargs

xargs play
于 2012-06-15T10:57:04.863 回答