[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

nomi con gli spazi...



Ragazzi, ho un n-esimo problemino, e sono di nuovo qui.
Mi sono scritto uno script per automatizzare il resampling dei file audio, eccolo qua:

#!/bin/bash

if echo $1 | grep -iq '\-h'
then
  echo 'sintassi: mp32wav dest_dir file1 file2 ...'
else
  for T in $*; do
     if echo $T | grep -iq '.mp3'
     then
        mpg123 -w ~/tmp.wav $T
        N=`basename $T ".mp3"`
        if echo $1/ | grep -iq '//'
        then
           sox ~/tmp.wav -r 44100 -c 2 $1$N.wav
        else
           sox ~/tmp.wav -r 44100 -c 2 $1/$N.wav
        fi
        rm ~/tmp.wav
     fi
  done
fi

Funzionerebbe anche, se non fosse che...
i nomi dei files in questione sono pieni di spazi...

Ho pensato di passare alla variabile il valore
'nome\ cognome'
invece di
'nome cognome'
cosa che devo fare nello script, visto che farlo da shell e' inutile...
voglio dire:
mp32wav ~/wave/ Nome\ Cognome.mp3
non funziona cmq.

Ho provato con
X=`echo $T | tr -s [:blank:] '\'[:blank:]`
ma e' inutile...
echo 'pi ppo' | tr -s [:blank:] 'X'
per esempio, funziona in shell, ma non in uno script.

Come faccio a metterlo in uno script?

Grazie 1k

Guldo

p.s.: si', mi rendo conto che se mi fossi messo a usare mpg123 per ogni singolo file scrivendolo io,
mpg123 ... Nome\ Cognome\ \-\ 1.mp3
mpg123 ... Nome\ Cognome\ \-\ 2.mp3
...
invece di scrivere uno script, a quest'ora avrei probabilmente gia' finito, ma e' piu' forte di me.

_________________________________________________________________
The new MSN 8: advanced junk mail protection and 2 months FREE* http://join.msn.com/?page=features/junkmail



Reply to: