douglas.nantes
(usa Ubuntu)
Enviado em 22/07/2011 - 09:31h
Bom dia Pessoal
Estou utilizando o Ubuntu 11.04 amd64 e fiz o seguinte script apenas como teste para futuramente criar um script que pretendo colocar em um servidor.
Ele divide um arquivo em partes que caibam em um dvd, escreve o nome dessas partes em um arquivo texto (files.in) executa um laço que lê esse arquivo e grava cada um em um DVD.
dvd.burn.sh
#!/bin/bash
PATH="/media/Douglas/"
FILES="/media/Douglas/files.in"
DVD="/dev/sr0"
split -b 4600M $PATH/home.docserver.20110712.tar.gz $PATH/home.docserver.20110712.tar.gz-
ls $PATH | grep home.docserver.20110712.tar.gz- > $FILES
exec 3<&0
exec 3<$FILES
while read FILE
do
eject $DVD
read -p "Coloque o DVD, Feche o Drive e Pressione ENTER para iniciar a gravação" choice
growisofs -speed=4 -Z $DVD -R -J $PATH/$FILE
done
exec 0<&3
Se eu executo os comandos manualmente no terminal funcionam perfeitamente.
No entanto, joguei os comandos no arquivo dvd.burn.sh
adicionei permissão de execução chmod +x dvd.burn.sh
Se eu tento executar o script ./dvd.burn.sh
Dá erro...
./dvd.burn.sh: linha 5: split: comando não encontrado
./dvd.burn.sh: linha 6: ls: comando não encontrado
Daí o cursor para na linha embaixo desses 2 erros e fica piscando.
Só consigo interromper com Ctrl-C
Se eu trocar o split por /usr/bin/split...
o ls por /bin/ls...
o grep por /bin/grep...
funcionam esses comandos, mas quando chega no exec, pau de novo!
Nunca tive de fazer isso nos scripts pra funcionar! Era só colocar os comando no arquivo .sh adicionar permissão de execução e executar. Pronto! Sempre funcionava.
Alguém sabe o que pode estar acontecendo?
Obs. Importantes:
ls -lah
...
-rwx--x--x 1 douglas douglas 429 2011-07-22 08:20 dvd.burn.sh
...
cat /etc/passwd
...
root:x:0:0:root:/root:/bin/bash
douglas:x:1000:1000:Douglas,,,:/home/douglas:/bin/bash
...
Tentei executar com meu usuário e com root e da o mesmo problema
Por favor, alguém pode me ajudar?