crontab을 사용하여 경고음 재생 문제

crontab을 사용하여 경고음 재생 문제

시계 같은 걸 만들려고 해요. 1시간이 지났음을 알리는 신호음이 울렸다.

그래서 crontab(sudo crontab -e)을 열고 다음 줄을 작성했습니다(테스트용 별표 5개가 있습니다).

* * * * * /usr/bin/mplayer /tones/beep.wav > /home/user/cronlogs/cron.log

하지만 경고음이 울리지 않습니다. 터미널에서 수동으로 테스트했는데 경고음이 제대로 재생되었습니다.

감사해요.

답변1

1 단계

xuser@mbs:~$ env|grep -i runt
XDG_RUNTIME_DIR=/run/user/1000

2 단계play.sh 파일 생성(chmod 기억)

#!/bin/bash
export XDG_RUNTIME_DIR=/run/user/1000
/usr/bin/mpg123 $1

3단계 crontab -e

хх * * * * /home/xuser/bin/play.sh /home/xuser/Музыка/demo_moya_vesna.mp3

4단계

$%)) ata-ta %:) enjoy

답변2

당신은 사용할 수 있습니다 pulseaudio...

play그러므로 대신 사용해야 합니다 aplay.

노력하다:

* * * * * /usr/bin/play /tones/beep.wav > /home/user/cronlogs/cron.log

답변3

나는 영어로 말하는 시계를 가지고 있습니다.

audio사운드를 재생해야 하는 사용자 ID를 오디오 그룹(파일에서 로 시작하는 줄의 끝 부분)에 추가하면 /etc/group도움이 될 수 있습니다 .

root재생하고 싶다면 추가하세요 sudo crontab -e. (이것은 일반 사용자 ID(Windows 10에는 적용되지 않음)를 사용하는 데만 필요했지만 rootLinux 배포판마다 다를 수 있습니다.)

답변4

Tom Hunter의 말이 맞습니다. 문제는 환경입니다. 저는 cas를 사용하고 aplay를 사용합니다.

crontab 파일에 다음과 같은 내용을 추가하세요.

XDG_RUNTIME_DIR=/run/user/1000
* * * * * aplay /tones/beep.wav

사용자 ID가 다른 경우 위의 1000을 로 바꾸십시오 id -u. 1분마다 경고음이 울립니다. 원래 대상의 경우 매 시간마다 경고음을 울리고 첫 번째 *대상을 교체합니다 0.

관련 정보