2017-12-21 4 views
1

일정 알림에 대한 스크립트를 작성했으며 이전에 선택한 오디오를 재생할 수 있기를 바랍니다. 내 프로그램 variabel 뜻 .mp3와 파일을 찾고 있지만 작동하지 않습니다. 도와주세요. 감사zenity가있는 .mp3 파일을 찾는 방법

nama=$(zenity --entry --text="Enter your name:" --entry-text " "); 

date=$(zenity --calendar --text "choose your event's day" --date-format=%Y-%m-%d); 

tang=$(zenity --forms --date-format=`date | awk ¥{print $1 $3,$2,$6}¦ `| time :`date | awk '{print $4}'`); 

    nambah=$(zenity --forms --ok-label="Done" --cancel-label="Cancel" --height=100 \ 
--title "Time" \ 
--text "Input Time(format 24)" \ 
--add-entry "Input Hours:Minutes:Second"); 

sounds=$(find | *.mp3 | zenity --list --column "choose sounds"); 


text=$(zenity --text-info --title "create event" --editable --font=Purisa); 

a=1 
while (a==1) 
do 

    cekdate="`date '+%Y-%m-%d'`"; 
    cektime="`date '+%H:%M:%S'`"; 
echo "echo cektime: $cektime" 
echo "echo cekdate: $cekdate" 
echo "nambah: $nambah" 
echo "date: $date" 
if [ "$nambah" == "$cektime" -a "$date" == "$cekdate" ] 
then 
echo -n 
d=`echo "Time: $nambah"` 
break 
fi 
done 

out=$(zenity --info --text "REMEMBER!! $nama today is $date you have event $d 

$text "); 
+3

그 라인 :'소리 = $ (찾아 | * .MP3 | zenity --list --column "choose sounds");'문제가 옳습니까? find 명령을 사용하여 * .mp3 파일을 검색하는 방법이 아닙니다 ... 확인하십시오. – Nic3500

+2

내가 여기있는 동안 참고하시기 바랍니다 : https://www.networkworld.com/article/2694433/unix-good-coding-practices-for-bash.html 및 들여 쓰기 코드. 각 행에';'은 필요하지 않습니다. – Nic3500

+1

** 귀하가 여기에 코드를 게시하기 전에 http://shellcheck.net **을 사용하는 방법을 배우십시오 ;-). shellcheck을 사용할 때 적절한 "she-bang"줄을 첫번째 줄, 보통'#!/bin/bash'에 포함시켜야합니다. https://stackoverflow.com/tags/bash/info 여러 번 읽으면 상위 10 개 셸 스크립트 초보자 실수를 피할 수 있습니다. 행운을 빕니다. – shellter

답변

1

당신은 당신의 코드에서 변경해야 할 경우 당신은이 개 장소를 가지고 : 그건 당신 find MP3 파일

  1. 변경 :

    sounds=$(find <path_to_mp3_directory> -type f -name "*.mp3" | zenity --list --column "choose sounds") 
           ^^^^^^^^^^^^^^^^^^^^^^#this must be edited to your needs 
    
  2. 이 좋아하는 전화 코드 끝에 MP3 플레이어가 있어야합니다. 필요한 경우 먼저 설치해야합니다. 당신의 플랫폼에서 가능한 것이 무엇인지 확인하고

    #play your music with your favorite player : mplayer, ffplay, nvlc, play (sox) or mpg123 (if you do not have the tools: sudo apt-get install mpg123/you favorite mp3 player) 
    mplayer $sounds #mpg123 $sounds 
    

귀하의 코드가 설치 패키지 관리자를 사용

nama=$(zenity --entry --text="Enter your name:" --entry-text " ") 

date=$(zenity --calendar --text "choose your event's day" --date-format=%Y-%m-%d) 

tang=$(zenity --forms --date-format=`date | awk \{print $1 $3,$2,$6}| `| time :`date | awk '{print $4}'`) 

nambah=$(zenity --forms --ok-label="Done" --cancel-label="Cancel" --height=100 \ 
--title "Time" \ 
--text "Input Time(format 24)" \ 
--add-entry "Input Hours:Minutes:Second"); 

sounds=$(find <path_to_mp3_directory> -type f -name "*.mp3" | zenity --list --column "choose sounds") 


text=$(zenity --text-info --title "create event" --editable --font=Purisa) 

a=1 
while (a==1) 
do 

    cekdate="`date '+%Y-%m-%d'`" 
    cektime="`date '+%H:%M:%S'`" 
    echo "echo cektime: $cektime" 
    echo "echo cekdate: $cekdate" 
    echo "nambah: $nambah" 
    echo "date: $date" 
    if [ "$nambah" == "$cektime" -a "$date" == "$cekdate" ] 
    then 
     echo -n 
     d=`echo "Time: $nambah"` 
    break 
    fi 
done 

out=$(zenity --info --text "REMEMBER!! $nama today is $date you have event $d 
$text ") 
#play your music with your favorite player : mplayer, ffplay, nvlc, play (sox) or mpg123 (if you do not have the tools: sudo apt-get install mpg123/you favorite mp3 player) 
mplayer $sounds # or mpg123 $sounds, etc. 
+1

다시 큰 감사 앨런, :) 그게 날 도와 줬어. 솔직히 말해서 나는 초보자인데 내 대답에 대해 만족하거나 승낙을 얻는다면 –

+0

:) 감사합니다. – Allan

관련 문제