h4tr3d |
|
Темы:
34
Сообщения:
2656
Участник с: 12 июля 2007
|
kolebas как я понял, флак и куе лежат рядом и отличаются только расширением? #!/bin/bash “THE BEER-WARE LICENSE” (Revision 42): <[email protected]> wrote this file. As long as you retain this notice you can do whatever you want with this stuff. If we meet some day, and you think this stuff is worth it, you can buy me a beer in return. Alexander 'hatred' Drozdoff find /dir/with/music -name "*.cue" -print | while read fn; do nm=$(basename $fn .cue) dir=$(dirname $fn) /bla-bla/cuetag.sh $fn $dir/$nm.flac done
systemd должен умереть.
|
kolebas |
|
Темы:
10
Сообщения:
94
Участник с: 15 октября 2008
|
h4tr3d, спасибо большое !работает. вот бы еще добавить что-нибудь, что б он на пробелы в названиях не ругался - был бы высший пилотаж )))) |
drdrey |
|
Темы:
0
Сообщения:
10
Участник с: 06 июня 2009
|
kolebas dir=$(dirname "$fn") #или dir=$(dirname "${fn}") вообще во многих скриптах спасает |
kolebas |
|
Темы:
10
Сообщения:
94
Участник с: 15 октября 2008
|
Dr.Dreyв этом почему то не спасает, или я не то что то делаю, |
h4tr3d |
|
Темы:
34
Сообщения:
2656
Участник с: 12 июля 2007
|
покажи ругать то наконец, думал сам догадаешься ;-)
systemd должен умереть.
|
kolebas |
|
Темы:
10
Сообщения:
94
Участник с: 15 октября 2008
|
h4tr3dесли в файлах заменить пробелы на _ то скрипт работает , иначе такое выдает: [[email protected] MP]$ cueflac basename: лишний операнд `-' Попробуйте `basename --help' для получения более подробного описания. ./Ellery: unknown format ./Ellery: input file error /usr/bin/cuetag.sh: line 147: [: 14: ожидается использование унарного оператора Eskelin: uknown file type -: uknown file type Ten: uknown file type -: uknown file type 2004_/Ellery: uknown file type Eskelin: uknown file type -: uknown file type Ten.cue: uknown file type ./Ellery: uknown file type Eskelin: uknown file type -: uknown file type Ten: uknown file type -: uknown file type ./Ellery: unknown format ./Ellery: input file error ./Ellery: unknown format ./Ellery: input file error ./Ellery: unknown format ./Ellery: input file error ./Ellery: unknown format ./Ellery: input file error ./Ellery: unknown format ./Ellery: input file error ./Ellery: unknown format ./Ellery: input file error ./Ellery: unknown format ./Ellery: input file error ./Ellery: unknown format ./Ellery: input file error ./Ellery: unknown format ./Ellery: input file error ./Ellery: unknown format ./Ellery: input file error ./Ellery: unknown format ./Ellery: input file error 2004_/.flac: ERROR: reading metadata, status = "FLAC__METADATA_CHAIN_STATUS_ERROR_OPENING_FILE" The FLAC file could not be opened. Most likely the file does not exist or is not readable. warning: number of files does not match number of tracks warning: number of files does not match number of tracks warning: number of files does not match number of tracks basename: лишний операнд `of' Попробуйте `basename --help' для получения более подробного описания. ./Art: unknown format ./Art: input file error /usr/bin/cuetag.sh: line 147: [: 21: ожидается использование унарного оператора Ensemble: uknown file type of: uknown file type Chicago: uknown file type -: uknown file type Urban: uknown file type Magic: uknown file type (2003)/Art: uknown file type Ensemble: uknown file type of: uknown file type Chicago: uknown file type -: uknown file type Urban: uknown file type Magic.cue: uknown file type ./Art: uknown file type Ensemble: uknown file type of: uknown file type Chicago: uknown file type -: uknown file type Urban: uknown file type Magic: uknown file type ./Art: unknown format ./Art: input file error (2003)/.flac: ERROR: reading metadata, status = "FLAC__METADATA_CHAIN_STATUS_ERROR_OPENING_FILE" The FLAC file could not be opened. Most likely the file does not exist or is not readable. ./Art: unknown format ./Art: input file error ./Art: unknown format ./Art: input file error ./Art: unknown format ./Art: input file error ./Art: unknown format ./Art: input file error ./Art: unknown format ./Art: input file error ./Art: unknown format ./Art: input file error ./Art: unknown format ./Art: input file error ./Art: unknown format ./Art: input file error ./Art: unknown format ./Art: input file error ./Art: unknown format ./Art: input file error warning: number of files does not match number of tracks warning: number of files does not match number of tracks |
h4tr3d |
|
Темы:
34
Сообщения:
2656
Участник с: 12 июля 2007
|
“'$fn'” попробуй
systemd должен умереть.
|
and |
|
Темы:
4
Сообщения:
374
Участник с: 22 июня 2009
|
Там баг с пробелами в самом cuetag.sh был. Уже пофиксили в AUR. |
h4tr3d |
|
Темы:
34
Сообщения:
2656
Участник с: 12 июля 2007
|
Ну что, кто ставит пиво? :)
systemd должен умереть.
|
brainerazer |
|
Темы:
0
Сообщения:
1
Участник с: 23 июля 2009
|
Юзаю скрипт, найденный на просторах ЛинуксФорума:#!/bin/bash #By DsTr wink.gif #`kdialog --passivepopup "Ðобавление в коллекÑиÑ..." 1` if [ "$1" == '' ]; then shellDir="$PWD" else shellDir="$1" fi cd "$shellDir" find |while read dir; do if [ -f "$dir" ]; then dirName="`dirname "$dir"`" cd "`dirname "$dir"`" tsFile=`echo "$dir" | sed -ne 's!^.*\/!!p'` ext=`echo "$dir" | sed -ne 's!^.*\.!!p' | tr '[:upper:]' '[:lower:]'` &> /dev/null base=`echo "$tsFile" | sed -e 's!\.[^.]*$!!'` &> /dev/null if [ "$ext" = "ape" ]; then #`kdialog --passivepopup "$dir converting to $base.flac..." 2` mac "$tsFile" "$base.wav" -d flac "$base.wav" rm -f "$tsFile" "$base.wav" fi if [ "$ext" = "wv" ]; then #`kdialog --passivepopup "$dir converting to $base.flac..." 2` wvunpack "$tsFile" flac "$base.wav" rm -f "$tsFile" "$base.wav" fi if [ "$ext" = "bin" ]; then #`kdialog --passivepopup "Converting $dir to $base.flac... " 2` `flac --force-raw-format --channels=2 --sample-rate=44100 --bps=16 --sign=signed --endian=little "$tsFile"` fi if [ "$ext" = "wav" ]; then #`kdialog --passivepopup "Converting $dir to $base.flac... " 2` `flac --force-raw-format --channels=2 --sample-rate=44100 --bps=16 --sign=signed --endian=little "$tsFile"` fi cd "$shellDir" fi done find |while read dir; do if [ -f "$dir" ]; then cd "`dirname "$dir"`" tsFile=`echo "$dir" | sed -ne 's!^.*\/!!p'` ext=`echo "$dir" | sed -ne 's!^.*\.!!p' | tr '[:upper:]' '[:lower:]'` &> /dev/null base=`echo "$dir" | sed -e 's!\.[^.]*$!!'` &> /dev/null if [ "$ext" = "cue" ]; then #`kdialog --passivepopup "Recoding $dir tags to unicode... " 2` pathtoflac=`ls | grep .flac` mv "$pathtoflac" "tmp.flac" mv "$tsFile" "tmp.cue" shnsplit -o wav "tmp.flac" -f "tmp.cue" -t '%n-%t' numTracks=`cueprint "tmp.cue" --disc-template %N` while (( numTracks > 0 )) do perfomer=`cueprint "tmp.cue" -n "$numTracks" --track-template %p` title=`cueprint "tmp.cue" -n "$numTracks" --track-template %t` album=`cueprint "tmp.cue" --disc-template %T` if (( ${#numTracks} == 2 )); then flac --replay-gain --force-raw-format --channels=2 --sample-rate=44100 --bps=16 --sign=signed --endian=little --best "$numTracks-$title.wav" splitname="$numTracks-$title.flac" rm -f "$numTracks-$title.wav" else flac --replay-gain --force-raw-format --channels=2 --sample-rate=44100 --bps=16 --sign=signed --endian=little --best "0$numTracks-$title.wav" splitname="0$numTracks-$title.flac" rm -f "0$numTracks-$title.wav" fi cueprint -n $numTracks -t 'ARRANGER=%A\nCOMPOSER=%C\nGENRE=%G\nMESSAGE=%M\nTRACKNUMBER=%n\nARTIST=%p\nTITLE=%t\nALBUM=%T\n' "tmp.cue" | egrep -v '=$' | metaflac "$splitname" --import-tags-from=- let "numTracks-=1" done rm -f "tmp.cue" "tmp.flac" fi cd "$shellDir" fi done #`kdialog --passivepopup "ÐавеÑÑено..." 1` |