arecord 无法与 crontab 配合使用

arecord 无法与 crontab 配合使用

我在 cron 作业录制方面遇到了问题。我可以从终端以与 GUI 相同的用户身份从 tcsh 脚本运行 arecord,但它无法从 crontab 运行。crontab 用户与 GUI 相同。arecord 将写入输出 .wav 文件的 44 个字节并永久停止。我必须使用 kill -9 来停止该过程。

知道发生什么事了吗?

答案1

有一个名为 XDG_RUNTIME_DIR 的环境变量需要在调用 arecord 命令之前进行设置。我将它设置为“setenv XDG_RUNTIME_DIR /run/user/${euid}”。此外,arecord 使用“pulseaudio”来连接硬件。这要求您使用与 ${euid} 建立的用户名相同的 GUI 登录。在 crontab 执行开始之前,进入设置并选择您的输入源和输入级别。我知道这很笨拙,但它确实有效。我热切期待更好的解决方案。

相关内容