The UNIX and Linux Forums  

Go Back   O UNIX e Linux Forum > Top Fóruns > Programação Shell Script e
.
google unix.com



Programação Shell Script e Post perguntas sobre ksh, CSH, SH, BASH, Perl, PHP, SED, Awk e outros scripts shell e shell scripts línguas aqui.

Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
Fio Thread Starter Fórum Respostas Última postagem
Script para gravar DVD na mosca? satimis Programação Shell Script e 0 05-20-2008 07:17
Como gravar um DVD em inicializável aix 5/3? rainbow_bean AIX 5 04-07-2008 07:12
Burn-CD 1.7.3 (Default sucursal) iBot Software Release - RSS Notícias 0 01-06-2008 05:50
como gravar um CD / DVD em solaris8 ambiente surainbow Sun Solaris 8 09-18-2007 05:38
como gravar estes arquivos ...? D-IEW BSD 4 10-14-2004 11:11

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback Thread Tools Pesquisar este Thread Rate Thread Display Modes
  #1 (permalink)  
Old 06-12-2007
bog333 bog333 is offline
Usuário
  
 

Join Date: Jun 2007
Posts: 3
Música cd queimar

Allo.
Eu faço um programa usando shell script para gravar CDs e DVDs, porque não quero instalar um KDE ou GNOME com dependência. Quero otimizar um dos meus shell script. este script é para queimar CDs musicais. Justo eu ter que ir no shell e escrever:
burn_cd_music audio1.mp3 audio2.mp3 audio1.ogg audio1.wav
o shell script e copiar o arquivo em / tmp / cd_temp, Converte-os em. wav e gravar o CD. É fonctionnal, mas eu não quero ter de arquivos temporários .....
Posso usar o tubo ou tampão para fazer isso, e como?
Desculpe para o meu Inglês, se você não entender, vou tentar explicar melhor


Dê-me você ideias
O meu script é:
#! / bin / bash
# fazer uma lista dos ficheiros mp3 e uma para o arquivo ogg
for i in $ @
fazer
j \u003d `echo $ i | cut-f2-d '". "
se teste $ j \u003d 'ogg'
então
List1 \u003d "List1 $ $ i"
fi
se teste $ j \u003d 'mp3'
então
List2 \u003d "$ List2 $ i"
fi
feito

# copiar o arquivo em / tmp / cd_temp (eu não quero fazer isto)
mkdir / tmp / cd_temp
for i in $ @
fazer
cp $ i / tmp / cd_temp /
feito

# ir no diretório arquivos
cd / tmp / cd_temp

# ogg converter o arquivo em wav
para i no List1
fazer
sox `basename $ i. ogg». ogg `basename $ i. ogg». wav
rm `basename $ i. ogg». ogg
feito

# converter o arquivo mp3 em wav
para i no List2
fazer
mpg123-w `basename $ i. mp3`. wav $ i
rm `basename $ i. mp3`. mp3
feito

# gravar CD
cdrecord dev \u003d ATA: 0,0,0-eject velocidade \u003d 2-pad-audio *. wav

# apaga o arquivo temporário
rm-r / tmp / cd_temp /
  #2 (permalink)  
Old 06-12-2007
Shell_Life's Avatar
Shell_Life Shell_Life is offline
Usuário
  
 

Join Date: Mar 2007
Localização: Bahia, Brasil
Lugares: 695
Bog,
Desde que eu não conheço a sua candidatura, não posso testar essa
script - veja se ele funciona para você:

Código:
#!/bin/bash

#Saves the current directory
mSaveDir=`pwd`

#Save the list of "ogg" and "wav" files
mListogg=""
mListmp3=""
for mFileName in $@
do
  j=`echo $mFileName | cut -f2 -d '.'` 
  if test $j = 'ogg' 
  then
    mListogg=${mListogg}" "$mFileName
  fi
  if test $j = 'mp3' 
  then
    mListmp3=${mListmp3}" "$mFileName
  fi
done

#make the "/tmp/cd_temp/" directory
mkdir /tmp/cd_temp

#go at the files directory
cd /tmp/cd_temp

#convert the ogg file in wav file 
for mFileName in ${mListogg}
do
  mBaseName=`basename $mFileName .ogg`
  mFullogg=$mSaveDir"/"$mBaseName".ogg"
  mFilewav=$mBaseName".wav"
  sox $mFullogg $mFilewav
done

#convert the mp3 file in wav file 
for mFileName in ${mListmp3}
do
  mBaseName=`basename $mFileName .mp3`
  mFullmp3=$mSaveDir"/"$mBaseName".mp3"
  mFilewav=$mBaseName".wav"
  mpg123 -w mFilewav ${mFullmp3}
done

#burn CD
cdrecord dev=ATA:0,0,0 -eject speed=2 -pad -audio *.wav

#erase the temporary file
rm -r /tmp/cd_temp/

  #3 (permalink)  
Old 06-12-2007
bog333 bog333 is offline
Usuário
  
 

Join Date: Jun 2007
Posts: 3
Tank you,
seu script não copie o arquivo original em / tmp / cd_temp e é bom (melhor que o meu script). temos o primeiro passo, mas agora é possível para não criar qualquer arquivo temporário. é possível passar directamente para todos os demais cdrecord conversão por cano. O meu ouro é também eliminar todos os ficheiros temporários.
  #4 (permalink)  
Old 06-12-2007
Shell_Life's Avatar
Shell_Life Shell_Life is offline
Usuário
  
 

Join Date: Mar 2007
Localização: Bahia, Brasil
Lugares: 695
Bog,
Os ficheiros temporários são utilizados pela aplicação.
Ela exige uma mudança no código do aplicativo.
  #5 (permalink)  
Old 06-12-2007
bog333 bog333 is offline
Usuário
  
 

Join Date: Jun 2007
Posts: 3
que tipo de mudança que eu posso fazer para eliminar os ficheiros temporários? Sei que é possível somme tempo para fazer com que a canalização, mas acho que não é aplicável numa situação como esta. ter um tampão em shell script?

thanks in advance
Closed Thread

Marcadores

Thread Tools Pesquisar este Thread
Pesquisar este Thread:

Pesquisa Avançada
Display Modes Esta taxa Thread
Esta taxa Thread:

Destacamento Regimento
Você não pode postar novas threads
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar suas postagens

BB code é Ligado
Smilies são Ligado
[IMG] código é Ligado
Código HTML é Desligado
Trackbacks são Ligado
Pingbacks são Ligado
Refbacks são Ligado




Todos os horários são GMT -4. A hora é agora 03:29.


Powered by: vBulletinCopyright © 2000 - 2006, Jelsoft Enterprises Limited. Língua Traduções Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
O UNIX e Linux Fóruns Content Copyright © 1993-2009. Todos os Direitos Reserved.Ad Gestão por RedTyger

Content Relevant URLs por vBSEO 3.2.0