Re: Ajuda com shell scritp

2010-08-06 Por tôpico Leonardo Carneiro
Oi Leandro. Acho que vc precisa usar o utilitário 'bc'.

Acho que ele é parte dos aplicativos do GNU, então provavelmente vem
em qualquer distribuição.

2010/8/6 Leandro Moreira lean...@leandromoreira.eti.br:
 Caros,
 Estou criando um script que faz um contador que armazena dentro de um
 arquivo o valor anterior e usa este para realizar o proximo salto, o
 contador estar funcionando perfeitamente, conforme abaixo:

 COUT=/home/lmoreira/script-dev/vpn/serial
 CONTADOR=`cat $COUT`
 if [  $CONTADOR -eq $CONTADOR ]; then
   let CONTADOR=$CONTADOR+1;
   echo Contador em: $CONTADOR;

 fi
 echo $CONTADOR  serial

 So que eu preciso que o numero seja implementado com 3casas decimais tipo
 001,002,003 pois vou usar essa informação também no meu scritp de firewall
 para realizar liberação de portas, algume pode me ajudar a formatar esse
 numero.

 Att.

 --
 Leandro Moreira
 Network Administrator
 LPIC1 - Linux Professional Institute Certified
 e-mail/msn: lean...@leandromoreira.eti.br
 Tel.: + 55(32) 9906-5713



--
To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/aanlktimmkfkmguobf8czc=sm=hrjnzjbrremfjc+-...@mail.gmail.com



Re: Ajuda com shell scritp

2010-08-06 Por tôpico Junior Polegato - Linux

Em 06-08-2010 09:35, Leandro Moreira escreveu:

Junior,
Na linha [  $CONTADOR -eq $CONTADOR ] ele compara as variaveis se 
forem iguais ele segue se nao ele nao faz nada, como contador vai 
receber o conteudo do arquivo serial vai ser sempre valores iguais 
entao ele entre na estrutura e soma +1 a variavel, não é pra ser um 
contador do tipo conte de zero a 100 esse eu precisso q ele de apenas 
um salto cada vez que eu executar o script.


Leandro,

Desculpe, mas verificar se uma variável (CONTADOR) é igual 
(-eq) à ela mesma (CONTADOR) vai ser sempre verdadeiro, teria algum caso 
em que isso não seria verdade?


Poderíamos, ser for somente para somar 1 ao número do arquivo, 
simplificar em:


COUT=arquivo
echo $((`cat $COUT` + 1))  $COUT

Para usar este número como inteiro de 3 dígitos completado com 
zeros à esquerda, no script onde for usar:


COUT=arquivo
CONTADOR=`printf %03i \`cat $COUT\``
...
(resto do seu script com CONTADOR sendo um inteiro de 3 dígitos, 
completado com zeros à esquerda)



[]'s
 Junior Poegato


--
To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4c5c0570.8040...@juniorpolegato.com.br



Re: ajuda com shell

2010-01-28 Por tôpico Sinval Júnior
Ricardo, este procedimento não é seguro, por que não usar o sudo ou
fakeroot?

Em 28 de janeiro de 2010 10:57, thiago thsa...@gmail.com escreveu:

 Senhores, tenho a seguinte linha

 user:x:509:509::/home/user:/bin/bash

 preciso colocar 0 no lugar dos dois 509, ou seja, colocar o usuário como
 root, alguém pode me ajudar?

 --
 Thiago Silveira Alexandre
 Security Enginner
 Intechne Tecnologia da Informação
 (98) 3311 6200
 (98) 3311 6219
 (98) 8132 1020


 --
 To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org
 with a subject of unsubscribe. Trouble? Contact
 listmas...@lists.debian.org




-- 
#=+
#!/usr/bin/env python
nome = 'Sinval Júnior'
email = 'sinvalju at gmail.com'
print nome
print email
#==+


Re: ajuda com shell

2010-01-28 Por tôpico thiago
Eu sei dos ricos desse procedimento
Sinval Júnior escreveu:
 Ricardo, este procedimento não é seguro, por que não usar o sudo ou
 fakeroot?

 Em 28 de janeiro de 2010 10:57, thiago thsa...@gmail.com
 mailto:thsa...@gmail.com escreveu:

 Senhores, tenho a seguinte linha

 user:x:509:509::/home/user:/bin/bash

 preciso colocar 0 no lugar dos dois 509, ou seja, colocar o
 usuário como
 root, alguém pode me ajudar?

 --
 Thiago Silveira Alexandre
 Security Enginner
 Intechne Tecnologia da Informação
 (98) 3311 6200
 (98) 3311 6219
 (98) 8132 1020


 --
 To UNSUBSCRIBE, email to
 debian-user-portuguese-requ...@lists.debian.org
 mailto:debian-user-portuguese-requ...@lists.debian.org
 with a subject of unsubscribe. Trouble? Contact
 listmas...@lists.debian.org mailto:listmas...@lists.debian.org




 -- 
 #=+
 #!/usr/bin/env python
 nome = 'Sinval Júnior'
 email = 'sinvalju at gmail.com http://gmail.com'
 print nome
 print email
 #==+


-- 
Thiago Silveira Alexandre
Security Enginner
Intechne Tecnologia da Informação
(98) 3311 6200
(98) 3311 6219
(98) 8132 1020


-- 
To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: ajuda com shell

2010-01-28 Por tôpico Junior Polegato - Linux

thiago escreveu:

Senhores, tenho a seguinte linha
user:x:509:509::/home/user:/bin/bash
preciso colocar 0 no lugar dos dois 509, ou seja, colocar o usuário como
root, alguém pode me ajudar


Olá,

  Seria isso?

echo 'user:x:509:509::/home/user:/bin/bash' | sed 's/509/0/g'

  Se quer mudar algo dentro de um arquivo (passwd no caso):

sed -i 's/509/0/g' /etc/passwd

  Para mais alternativas favor fornecer mais dados.

[]'s
   Junior Polegato



--
To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: ajuda com shell

2010-01-28 Por tôpico thiago
Eh mais ou menos isso Junior, só que não é somente o número 509, e sim
qualquer número, ou seja, até então eu não sei o ID nem o GID do
usuário, entendeu?
Desculpas se não fui claro da primeira vez.


Junior Polegato - Linux escreveu:
 thiago escreveu:
 Senhores, tenho a seguinte linha
 user:x:509:509::/home/user:/bin/bash
 preciso colocar 0 no lugar dos dois 509, ou seja, colocar o usuário como
 root, alguém pode me ajudar

 Olá,

   Seria isso?

 echo 'user:x:509:509::/home/user:/bin/bash' | sed 's/509/0/g'

   Se quer mudar algo dentro de um arquivo (passwd no caso):

 sed -i 's/509/0/g' /etc/passwd

   Para mais alternativas favor fornecer mais dados.

 []'s
Junior Polegato





-- 
Thiago Silveira Alexandre
Security Enginner
Intechne Tecnologia da Informação
(98) 3311 6200
(98) 3311 6219
(98) 8132 1020


-- 
To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: ajuda com shell

2010-01-28 Por tôpico Gustavo Soares SLot

Em 28-01-2010 11:37, thiago escreveu:

Eh mais ou menos isso Junior, só que não é somente o número 509, e sim
qualquer número, ou seja, até então eu não sei o ID nem o GID do
usuário, entendeu?
   


Mas pelo menos você tem o nome do usuário ?





Desculpas se não fui claro da primeira vez.


Junior Polegato - Linux escreveu:
   

thiago escreveu:
 

Senhores, tenho a seguinte linha
user:x:509:509::/home/user:/bin/bash
preciso colocar 0 no lugar dos dois 509, ou seja, colocar o usuário como
root, alguém pode me ajudar
   

Olá,

   Seria isso?

echo 'user:x:509:509::/home/user:/bin/bash' | sed 's/509/0/g'

   Se quer mudar algo dentro de um arquivo (passwd no caso):

sed -i 's/509/0/g' /etc/passwd

   Para mais alternativas favor fornecer mais dados.

[]'s
Junior Polegato



 


   



--
---
SLot
UIN: 19596909
Linux User: 124842
Jabber: s...@jabber-br.org
Emails: slot...@gmail.com  | s...@xen-br.org


--
To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: ajuda com shell

2010-01-28 Por tôpico thiago
Achei esse comando na net

sed ':a;s/^\([^,]*,[^,]\+\)o/\1x/;ta' teste

e diz que substitui o por x entre a segunda e a terceira ,. O que
preciso é mais ou menos isso, só que preciso substituir qualquer número
que esteja entre o segundo e terceiro, e entre o terceiro e quarto :
por 0.



Junior Polegato - Linux escreveu:
 thiago escreveu:
 Senhores, tenho a seguinte linha
 user:x:509:509::/home/user:/bin/bash
 preciso colocar 0 no lugar dos dois 509, ou seja, colocar o usuário como
 root, alguém pode me ajudar

 Olá,

   Seria isso?

 echo 'user:x:509:509::/home/user:/bin/bash' | sed 's/509/0/g'

   Se quer mudar algo dentro de um arquivo (passwd no caso):

 sed -i 's/509/0/g' /etc/passwd

   Para mais alternativas favor fornecer mais dados.

 []'s
Junior Polegato





-- 
Thiago Silveira Alexandre
Security Enginner
Intechne Tecnologia da Informação
(98) 3311 6200
(98) 3311 6219
(98) 8132 1020


-- 
To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: ajuda com shell

2010-01-28 Por tôpico thiago
Tenho sim Gustavo :)
Gustavo Soares SLot escreveu:
 Em 28-01-2010 11:37, thiago escreveu:
 Eh mais ou menos isso Junior, só que não é somente o número 509, e sim
 qualquer número, ou seja, até então eu não sei o ID nem o GID do
 usuário, entendeu?


 Mas pelo menos você tem o nome do usuário ?




 Desculpas se não fui claro da primeira vez.


 Junior Polegato - Linux escreveu:
   
 thiago escreveu:
 
 Senhores, tenho a seguinte linha
 user:x:509:509::/home/user:/bin/bash
 preciso colocar 0 no lugar dos dois 509, ou seja, colocar o usuário
 como
 root, alguém pode me ajudar

 Olá,

Seria isso?

 echo 'user:x:509:509::/home/user:/bin/bash' | sed 's/509/0/g'

Se quer mudar algo dentro de um arquivo (passwd no caso):

 sed -i 's/509/0/g' /etc/passwd

Para mais alternativas favor fornecer mais dados.

 []'s
 Junior Polegato



  






-- 
Thiago Silveira Alexandre
Security Enginner
Intechne Tecnologia da Informação
(98) 3311 6200
(98) 3311 6219
(98) 8132 1020


-- 
To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: ajuda com shell

2010-01-28 Por tôpico Fabricio Cannini
     Senhores, tenho a seguinte linha

     user:x:509:509::/home/user:/bin/bash

     preciso colocar 0 no lugar dos dois 509, ou seja, colocar o
     usuário como
     root, alguém pode me ajudar?

Não estou em uma máquina Linux agora, mas que eu me lembre é assim, se
isto está no arquivo '/etc/passwd' :

# usermod --u 0 -g 0 -o user

Boa sorte.


--
To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: ajuda com shell

2010-01-28 Por tôpico thiago
Resolvido, tem gente (eu) que sempre tende a pensar da forma mais
difícil de fazer as coisas
k

Fabricio Cannini escreveu:
 Senhores, tenho a seguinte linha

 user:x:509:509::/home/user:/bin/bash

 preciso colocar 0 no lugar dos dois 509, ou seja, colocar o
 usuário como
 root, alguém pode me ajudar?
   

 Não estou em uma máquina Linux agora, mas que eu me lembre é assim, se
 isto está no arquivo '/etc/passwd' :

 # usermod --u 0 -g 0 -o user

 Boa sorte.


   


-- 
Thiago Silveira Alexandre
Security Enginner
Intechne Tecnologia da Informação
(98) 3311 6200
(98) 3311 6219
(98) 8132 1020


-- 
To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Ajuda com Shell Script Avançado - Algue m se atreve.

2008-07-11 Por tôpico Allison Vollmann
Bom eu acho que não preciso explicar muito do script abaixo, pois pouca 
coisa muda do seu, eu apenas usei o while pois estou usando uma variável 
incremental para servir de índice para o loop nas matrizes.



#!/bin/sh

IF=(eth0 eth1)
IP=(192.168.0.1 192.168.0.2)
MASK=(255.255.255.0 255.255.0.0)
BCAST=(192.168.0.0 192.168.0.0)
x=0

while [ $x != [EMAIL PROTECTED] ]
do
ifconfig ${IF[$x]} ${IP[$x]} netmask ${MASK[$x]} broadcast ${BCAST[$x]} up
let x = x+1
done
---


Abraços;

gunix escreveu:

Preciso criar um script que faça +- isso
Alguem pode me ajudar?

Vou ter uma variavel chamada

IF=eth0 eth1 eth2
e vou ter varios parametros

eth0_IP=10.1.0.1 http://10.1.0.1
eth1_IP=100.100.100.1 http://100.100.100.1
...

vou jogar isso num for para ler a variavel IF e ao entrar ele tenta os ip.
Um exemplo do que quero é:

for i in $IF; do
ifconfig $i $i_IP netmask $i_MASK broadcast $i_BCAST up
done

preciso concatenar estas a variavem $IF com o  _IP  para que eu 
obtenha o resultado de $eth0_IP como faço isso?


Alguem pode me ajudar.
Parece uma loucura, maso que preciso fazer é uma rotina que vai ler 
diversos valores que alteram somente o inicial

O Acima foi so um exmplo de que preciso.

A raciocinio é igual
Fui bem claro?

Algeum pode me ajudar?
Quando tento concaternar

echo $$IF ele da problema.

aTt
Gustavo





--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Ajuda com Shell Script Avançado - Algue m se atreve.

2008-07-11 Por tôpico Junior Polegato - Linux

gunix escreveu:

Preciso criar um script que faça +- isso
Alguem pode me ajudar?
Vou ter uma variavel chamada
IF=eth0 eth1 eth2
e vou ter varios parametros
eth0_IP=10.1.0.1 http://10.1.0.1
eth1_IP=100.100.100.1 http://100.100.100.1
...
vou jogar isso num for para ler a variavel IF e ao entrar ele tenta os ip.
Um exemplo do que quero é:
for i in $IF; do
ifconfig $i $i_IP netmask $i_MASK broadcast $i_BCAST up
done
preciso concatenar estas a variavem $IF com o  _IP  para que eu 
obtenha o resultado de $eth0_IP como faço isso?

Alguem pode me ajudar.
Parece uma loucura, maso que preciso fazer é uma rotina que vai ler 
diversos valores que alteram somente o inicial

O Acima foi so um exmplo de que preciso.
A raciocinio é igual
Fui bem claro?
Algeum pode me ajudar?
Quando tento concaternar
echo $$IF ele da problema.


Olá,

  Não entendi muito bem, mas pode fazer assim:

ETH[0 * 3 + 0] = 1.1.1.1  # IP da eth0
ETH[0 * 3 + 1] = 255.255.255.0# MASK da eth0
ETH[0 * 3 + 2] = 1.1.1.255# BCAST da eth0

ETH[1 * 3 + 0] = 1.1.1.2  # IP da eth1
ETH[1 * 3 + 1] = 255.255.255.0# MASK da eth1
ETH[1 * 3 + 2] = 1.1.1.255# BCAST da eth1
. . .
MAX_ETH=(([EMAIL PROTECTED] / 3))
for ((i=0; i  MAX_ETH; i++; do
   ifconfig ${ETH[i * 3 + 0]} netmask ${ETH[i * 3 + 1]} broadcast 
${ETH[i * 3 + 2]} up

done

Onde o primeiro número entre colchetes é o da eth e o último é 0=IP, 
1=MASK e 2=BCAST. O * 3 + é para emular duas dimensões em Bash.



Se ainda insistir no seu método, tente:

for i in $IF; do
   IP=`eval echo \$$i_IP`
   MASK=`eval echo \$$i_MASK`
   BCAST=`eval echo \$$i_BCAST`
   ifconfig $i $IP netmask $MASK broadcast $BCAST up
done


[]'s
   Junior Polegato


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Ajuda com Shell Script Avançado - Alguem se atreve.

2008-07-10 Por tôpico Thiago Silveira Alexandre
vc quer eh concatenar cada interface com seus parametros eh isso?


2008/7/10 gunix [EMAIL PROTECTED]:

 Preciso criar um script que faça +- isso
 Alguem pode me ajudar?

 Vou ter uma variavel chamada

 IF=eth0 eth1 eth2
 e vou ter varios parametros

 eth0_IP=10.1.0.1
 eth1_IP=100.100.100.1
 ...

 vou jogar isso num for para ler a variavel IF e ao entrar ele tenta os ip.
 Um exemplo do que quero é:

 for i in $IF; do
 ifconfig $i $i_IP netmask $i_MASK broadcast $i_BCAST up
 done

 preciso concatenar estas a variavem $IF com o  _IP  para que eu obtenha o
 resultado de $eth0_IP como faço isso?

 Alguem pode me ajudar.
 Parece uma loucura, maso que preciso fazer é uma rotina que vai ler
 diversos valores que alteram somente o inicial
 O Acima foi so um exmplo de que preciso.

 A raciocinio é igual
 Fui bem claro?

 Algeum pode me ajudar?
 Quando tento concaternar

 echo $$IF ele da problema.

 aTt
 Gustavo