Вопрос по скрипту, TheFatal, 29-Ноя-12, 17:03 [смотреть все]Доброго времени суток, есть задача: поиск всех mp3 файлов в указанной папке, а потом передача их на обработку программе mediainfo для дальнейшего выдергивания тегов.вот скрипт: #!/bin/bash IFS='\' for song in `find /stripe/temp/music/ -name "*.mp3"` do artist=`mediainfo "$song" | grep Performer` echo $artist done вывод скрипта пустой: bsd# sh /root/test.sh bsd# по отдельности команды отрабатывают: find /stripe/temp/music/ -name "*.mp3" /stripe/temp/music/2012 - The Acausal Fire/Bane - 03 In endless silence.mp3 mediainfo "/stripe/temp/music/2012 - The Acausal Fire/Bane - 03 In endless silence.mp3" | grep Performer Performer : Bane Подскажите пожалуйста, в чем может быть проблема ? Подозреваю, что возможно где-то ошибся с экранированием.
|
- Вопрос по скрипту, pavlinux, 23:00 , 29-Ноя-12 (1) +1
> Подозреваю, что возможно где-то ошибся с экранированием.Каждый раз под Новый год /мы с друзьями отправляемся в баню/вылазит этот вопрос/! :) find /stripe/temp/music/ -name "*.mp3" -exec mediainfo {} \;find . -print0 | while read -d $'\0' i; do mediainfo "$(echo $i | grep .mp3)"; done;
- Вопрос по скрипту, TheFatal, 13:30 , 30-Ноя-12 (2) –1
>> Подозреваю, что возможно где-то ошибся с экранированием. > Каждый раз под Новый год /мы с друзьями отправляемся в баню/вылазит этот > вопрос/! :) > > find /stripe/temp/music/ -name "*.mp3" -exec mediainfo {} \; > find . -print0 | while read -d $'\0' i; do mediainfo "$(echo > $i | grep .mp3)"; done; > большое спасибо за ответ, но дальше возникла еще 1 проблема, нужно создать папку, с именем выдернутого тега исполнителя, а так же папку с названием альбома и годом, в моем скрипте, с учетом Вашего комментария я сделал так: IFS=$'\b' for tar in `cd /stripe/temp/music && ls *.rar` do unrar x "$tar" && find . -print0 | while read -d $'\0' song do artist=`mediainfo "$(echo $song | grep .mp3)" | grep Performer | awk '{print $3} '` album=`mediainfo "$(echo $song | grep .mp3)" | grep Album | awk '{ for (i=3 ; i< =NF; i++) printf $i" "; print "" }'` year=`mediainfo "$(echo $song | grep .mp3)"| grep Recorded | awk '{print $4}'` mkdir -p /stripe/temp/sorted/$artist mkdir -p "/stripe/temp/sorted/$artist/$album $year" mv "$song" "/stripe/temp/sorted/$artist/$album $year" done проблема в том, что папка не создается, и скрипт на это ругается, команды запущенные руками - отрабатывают, подскажите пожалуйста в чем может быть проблема.
- Вопрос по скрипту, PavelR, 15:30 , 30-Ноя-12 (3)
> проблема в том, что папка не создается, и скрипт на это ругается, > команды запущенные руками - отрабатывают, подскажите пожалуйста в чем может быть > проблема.ну как, сложно не признать тот факт, что проблема - в чтении и понимании вами документации и статей, а также в чтении и понимании сообщений об ошибках, которые возникают при работе вашего скрипта. Вы считаете, что он "просто ругается", а надо хотя бы знакомые буквы на экране поискать.
- Вопрос по скрипту, pavlinux, 16:59 , 30-Ноя-12 (4)
>>> Подозреваю, что возможно где-то ошибся с экранированием. >> Каждый раз под Новый год /мы с друзьями отправляемся в баню/вылазит этот > ... > mkdir -p "/stripe/temp/sorted/$artist/$album $year" > mv "$song" "/stripe/temp/sorted/$artist/$album $year" Пробелы не заэкранировал
mkdir -p "/stripe/temp/sorted/$artist/$album\ $year" mv "$song" "/stripe/temp/sorted/$artist/$album\ $year"
Можна вопрос, нафига опять создавать папки с пробелами? Назло врагам, чтоб другие мучились? :) $album-$year $album_$year $album.$year
- Вопрос по скрипту, TheFatal, 22:09 , 03-Дек-12 (5)
>[оверквотинг удален] > Пробелы не заэкранировал > > mkdir -p "/stripe/temp/sorted/$artist/$album\ $year" > mv "$song" "/stripe/temp/sorted/$artist/$album\ $year" > > Можна вопрос, нафига опять создавать папки с пробелами? Назло врагам, чтоб другие > мучились? :) > $album-$year > $album_$year > $album.$year большое спасибо, скрипт дописал, но там, по сути полностью переработал его - Вопрос по скрипту, Andrey Mitrofanov, 09:28 , 04-Дек-12 (6)
> Можна вопрос, нафига опять создавать папки с пробелами?По _пробелам в шишдошс подписи под ярлычками (по словам!) переносятся. Это правильно. Это надо. Ты не в курсе. > Назло врагам, чтоб другие мучились? :)
- Вопрос по скрипту, pavlinux, 14:03 , 04-Дек-12 (7)
>> Можна вопрос, нафига опять создавать папки с пробелами? > По _пробелам в шишдошс подписи под ярлычками (по словам!) переносятся.Это типа что-то "Отчёт для бухгалтерии за 2012 по оптовым продажам хлопковых подгузников фирмы «Никалуназад» © в формате Акробат.pdf"
|