while e exibição de variavel [RESOLVIDO]

1. while e exibição de variavel [RESOLVIDO]

marcio mendes mendes
conectadohost

(usa XUbuntu)

Enviado em 26/01/2016 - 12:04h

Olá, continuando com meus scripts de segurança dessa vez estou com um problema na hora de exibir o conteúdo do arquivo.
tenho um arquivo com 2 colunas, do lado esquerdo tem o nome do arquivo e do lado direito o nome do usuário.
estou tentando com o while exibir os 2.
eu criei 2 variáveis a variável AQQ que seria o nome do arquivo e a variável USS que seria o nome do usuário.
quando executo o script até funciona porem acaba exibindo na tela a variável USS e isso vai me atrapalhar quando for trabalhar com elas.

#!/bin/bash
SHELL=/bin/sh
PATH=/sbin:/usr/sbin:/usr/bin:/bin

let linhas=`cat /home/bloqueia-envio/trabalhando5.txt |wc -l`
cat /home/bloqueia-envio/trabalhando5.txt|tail -$linhas|sed 's/AQQ//'|
while read AQQ USS
do

echo -e "$AQQ $USS "

done

quando executa ele mostra dessa forma
revslider.zip USS usuario1
revslider.zip USS usuario2
showbiz.zip USS usuario3
showbiz.zip USS usuario4
revslider.zip USS usuario5
revslider.zip USS usuario6

funciona porem acaba exibindo a variavel USS e isso vai me atrapalhar
pois pretendo fazer isso
find /home/$USS -iname $AQQ -exec ls -lh {} \;




  


2. MELHOR RESPOSTA

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 26/01/2016 - 12:35h

Opa,

Tente assim:
SHELL=/bin/sh
PATH=/sbin:/usr/sbin:/usr/bin:/bin

sed -r 's/(AQQ|USS)//g' /home/bloqueia-envio/trabalhando5.txt |
while read AQQ USS
do
echo -e "$AQQ $USS "
done


Sobre postar os codigos,
Ao iniciar uma resposta/topico, clique no botão </> que ele automaticamente vai gerar as tags [code]. Tudo que escrever dentro delas, sairá no formato codigo.



Abs
---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---

3. Re: while e exibição de variavel

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 26/01/2016 - 12:17h

Opa,

Posta algumas linha do arquivo trabalhando5.txt ( de preferencia dentro das tag [code], pfvr).

abs


---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---


4. res: while e exibição de variavel

marcio mendes mendes
conectadohost

(usa XUbuntu)

Enviado em 26/01/2016 - 12:22h

Olá,
opa meu mestre do sed, ta na mão





AQQ revslider.zip USS usuario1
AQQ revslider.zip USS usuario2
AQQ showbiz.zip USS usuario3
AQQ showbiz.zip USS usuario4
AQQ revslider.zip USS usuario5
AQQ revslider.zip USS usuario6


na hora de salvar esse arquivo eu salvei ele ja com a variavel AQQ e USS mas posso remover com o awk

eu até tentei fazer isso pra ver se conseguia ler tudo
cat /home/bloqueia-envio/trabalhando5.txt|tail -$linhas|sed 's/AQQ//'|
cat /home/bloqueia-envio/trabalhando5.txt|tail -$linhas|sed 's/USS//'|

mas deu no mesmo num sei por que, se eu conseguise colocar as duas variaveis dentro do sed ai era só correr pro abraço.


---> A arte de programar consiste na arte de organizar e dominar a complexidade.
---> Dijkstra <---


5. res: while e exibição de variavel

marcio mendes mendes
conectadohost

(usa XUbuntu)

Enviado em 26/01/2016 - 12:42h

perfeito meu amigo, cada resposta sua é uma aula pra mim.kkkk
sed -r 's/(AQQ|USS)//g' 2 variaveis dentro do sed, isso vai me ajudar a desenvolver muitos scripts.



revslider.zip usuario1
revslider.zip usuario2
showbiz.zip usuario3
showbiz.zip usuario4
revslider.zip usuario5
revslider.zip usuario6

find /home/usuario1 -iname revslider.zip -exec ls -lh {} \;
find /home/usuario2 -iname revslider.zip -exec ls -lh {} \;
find /home/usuario3 -iname showbiz.zip -exec ls -lh {} \;
find /home/usuario4 -iname showbiz.zip -exec ls -lh {} \;
find /home/usuario5 -iname revslider.zip -exec ls -lh {} \;
find /home/usuario6 -iname revslider.zip -exec ls -lh {} \;





---> A arte de programar consiste na arte de organizar e dominar a complexidade.
---> Dijkstra <---


6. Re: while e exibição de variavel [RESOLVIDO]

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 26/01/2016 - 12:50h

haha. Que bom que deu certo!

Só uma observação: Neste caso, o comando sed que construimos leva em consideração o texto puro e não variáveis, ou seja, ele vai trocar a STRING (texto puro) AQQ ou USS por nada.
Se um dia precisar usar variáveis do shell no sed use aspas duplas. EX: sed "s/$var1/$var2/g"

abs
---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts