o problema é de sintaxe, use da seguinte forma:
if test $? -eq 0 ; then
cdrw=false
# OBS:
# 1) não se usa o sinal de igual no comando if test, mas usa-se:
# -eq -> igual a
# -ne -> nao igual a (diferente)
# -le -> menor ou igual a
# -lt -> menor que
# -ge -> maior ou igual a
# -gt -> maior que
#
# 2) nao esqueca do ponto-e-virgula antes do then, ou coloque-o na linha
seguinte
#
# 3) para atribuir valor a uma variavel nao pode ter espaco em branco entre o
sinal de igual:
# ERRADO: cdrw = false
# CERTO: cdrw=false
Espero ter ajudado,
Emerson Souto
----- Original Message -----
From: eaj1969
To: shell-script
Sent: Friday, February 17, 2006 6:56 AM
Subject: [shell-script] Erro com IF/ELSE
Este script esta dando erro na linha do else,
oque pode estar de errado ?
#!/bin/sh
cdrw=true
while $cdrw do
cdrecord -msinfo -s dev=/dev/cdrom
if test $? = 0 then
cdrw = false
else
echo "Sem CD"
sleep 10
fi
done
exit 0
[As partes desta mensagem que não continham texto foram removidas]
---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
aviso.
---------------------------------------------------------------------
Sair da lista: [EMAIL PROTECTED]
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil
Links do Yahoo! Grupos
<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/shell-script/
<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html