Pular para o conteúdo

vetor shell

Responder tópico
  • Denunciar
  • Indicar
01 02

1. vetor shell

Enviado em 19/06/2008 - 11:51h

ae povo... bom dia pra qm naum almoço ainda e boa tarde ao resto
xD

abaixo segue um codigo q naum consigo fazer funcionar...

o erro estah nos vetores, pois naum consigo compreender sua estrutura...

caso algm consiga resolver... por gentileza poste aki e se possível me explique o pq

desde jah agradecido
= )

#!/bin/bash


listagem=`ifconfig | grep eth | cut -c1-4`;
for i in $listagem
do
echo $i
done
read x
contador=0
eths=

for i in $listagem
do
auxSpeed=`ethtool $i | grep Speed | cut -d':' -f2 |\
cut -d' ' -f2`;
aux="$i conexao de $auxSpeed"
echo $aux
read x
eths[$contador] = "$i conexão de $auxSpeed"
echo $eths[$contador]
contador=`expr $contador + 1`
read x
done

Responder tópico

2. Re: vetor shell

Enviado em 19/06/2008 - 12:47h

Para declarar vetores no shell, você utiliza a notação:

vetor=(a b c d e f)
ou
vetor=(`comando1 | comando2 | comando3`)

3. Re: vetor shell

Enviado em 19/06/2008 - 13:01h

nm deu certo...

4. Re: vetor shell

Enviado em 19/06/2008 - 13:37h

Execute o script em modo debug e veja em que ponto está(ão) ocorrendo erro(s)!

$ bash -xv script

5. Re: vetor shell

Enviado em 19/06/2008 - 15:07h

eu modifiquei o seu script
testa!

#!/bin/bash
listagem=$(ifconfig | grep eth | cut -c1-4)
contador=0
eths=
for i in $listagem
do
auxSpeed=$(ethtool $i | grep Speed | cut -d':' -f2 | cut -d' ' -f2)
aux="$i conexao de $auxSpeed"
echo eths[$contador] = "$i conexãde $auxSpeed"
contador=$(expr $contador + 1)
done

6. Re: vetor shell

Enviado em 19/06/2008 - 15:34h

quaaaase

ele listo beleza...
soh q naum atribui...

mas o q eu qria seria algo mais a ver com esse aki:

$ #!/bin/bash
$
$ listagem=$(ifconfig | grep eth | cut -c1-4)
$ contador=0
$ eths=
$
$ for i in $listagem
$ do
$ auxSpeed=$(ethtool $i | grep Speed | cut $ -d':' -f2 | cut -d' ' -f2)
$ aux="$i conexao de $auxSpeed"
$ eths[$contador]="$i conexão de $auxSpeed"
$ echo eths[$contador]
$ contador=$(expr $contador + 1)
$ done

q eu modifikei do q vc fez...

ainda continua naum funcionando ^^

mah seu funfo msm... soh q ele soh lista

7. Re: vetor shell

Enviado em 19/06/2008 - 21:27h

Tente assim:

#!/bin/bash


LISTAGEM=$(/sbin/ifconfig | grep eth | cut -c1-4)

CONTADOR=0
eths=

for i in ${LISTAGEM}
do

AUX_SPEED=$(/usr/sbin/ethtool ${i} | grep Speed | cut -d':' -f2 |cut -d' ' -f2)
eths[${CONTADOR}]="${i} conexão de ${AUX_SPEED}"
echo ${eths[${CONTADOR}]}
CONTADOR=$((CONTADOR+1))
done

8. Re: vetor shell

Enviado em 20/06/2008 - 08:09h

mesmo erro...

dah erro na atribuição do vetor na posição do contador...

e o pior eh q pelo q eu to lendo tá certa a sintaxe... mah se algm discorda

^^

sou todo ouvidos, ou melhor... olhos
xD

9. Re: vetor shell

Enviado em 20/06/2008 - 08:54h

e que exatamente vc quer alterar?
pq no seu script vc apenas lista!

coloque o produto final que vc deseja obter.

10. Re: vetor shell

Enviado em 20/06/2008 - 10:00h

Coloque o erro para que possamos ver.

Bem... Temos que lembrar que vetores no bash não são em todas as versões que está implementado.

11. Re: vetor shell

Enviado em 20/06/2008 - 11:17h

TesteVOL.sh: 13: Syntax error: Bad substitution

este eh o erro...

agora.... qnto a versaum... jah tah toda atualizada...

12. Re: vetor shell

Enviado em 20/06/2008 - 12:50h

Rode o script assim:

bash -xv script.sh

e coloque todas as linhas q ele produzir para que possamos analisar.
01 02

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder