vetor shell

1. vetor shell

Gregory Zanon
iglander

(usa Ubuntu)

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



  


2. Re: vetor shell

Sandro Marcell
SMarcell

(usa Slackware)

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

Gregory Zanon
iglander

(usa Ubuntu)

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

nm deu certo...


4. Re: vetor shell

Sandro Marcell
SMarcell

(usa Slackware)

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

marden do vale pimenta
marden_pimenta

(usa Fedora)

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

Gregory Zanon
iglander

(usa Ubuntu)

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

Denis Doria
thuck

(usa Debian)

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

Gregory Zanon
iglander

(usa Ubuntu)

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

marden do vale pimenta
marden_pimenta

(usa Fedora)

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

Denis Doria
thuck

(usa Debian)

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

Gregory Zanon
iglander

(usa Ubuntu)

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

Denis Doria
thuck

(usa Debian)

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



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts