我尝试了以下命令find ~/dir1 *.m4a | play
目录 dir1 中正好有 1 个 m4a 文件,我想播放它但是我从播放中得到一个使用错误。为什么?
您编写的内容指示将 find 命令(一个 m4a 文件)的输出作为下一个命令 play的输入发送。
现在,我不知道那出戏究竟是什么,但最有可能的是,它的语法是这样的:
play filename
但是你写的翻译成:
play < "filename"
所以,你可能想要做的是使用像 xargs 这样的命令,它会做到这一点:
find ~/dir1 *.m4a | xargs play
结果是:
play foundfile1 foundfile2 ...
可能玩不使用 STDIN 所以你必须使用 xargs
find ~/dir1 \*.m4a |xargs play
您正在尝试通过管道传输文件的内容(即通过 STDIN 发送)。据我从播放手册页中可以看出,它不能做到这一点。
您想发送找到播放的文件名,如下所示:
找到 ~/dir1 *.m4a | xargs 玩
采用find -name *.mp4 -exec play {} /;
尝试另一种方式:
play ~/dir1 *.m4a
如果不工作 - 检查播放是否支持 m4a
或尝试在您的 pip 行中使用 xargs
xargs play