AWK - remover palavra KEY: quando uso o mouse [RESOLVIDO]

1. AWK - remover palavra KEY: quando uso o mouse [RESOLVIDO]

Alex Machado Fontinelli
Pinguino

(usa Debian)

Enviado em 15/01/2022 - 08:49h

Estou usando o comando abaixo para fazer um Screenkey (Programa que mostra as teclas pressionadas), mas sempre que uso o mouse aparece a palavra KEY: e ela só deveria aparecer quando eu uso o teclado

xev | awk -F ' ' '{gsub("),", "")} /^KeyPress|^ButtonPress/ { a[NR+2] } NR in a {if($4 == "1,") {print "MOUSE: Left Click"}
{if($4 == "2,") {print "MOUSE: Middle Click"}}
{if($4 == "3,") {print "MOUSE: Right Click"}}
{if($4 == "4,") {print "MOUSE: Wheel Up"}}
{if($4 == "5,") {print "MOUSE: Wheel Down"}}
{print "KEY: " toupper($7)} }'


output

MOUSE: Left Click
KEY:


a palavra KEY: não deveria aparecer quando eu uso o mouse
ex:


MOUSE: Left Click




  


2. MELHOR RESPOSTA

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 15/01/2022 - 23:53h

Pinguino escreveu:


Tem algum exemplo de como eu poderia fazer ???

Tenho sim ....
Segue:
cat awk.out
BEGIN {
RS = "\n\n"
FS = "[\n,]"
}

/^ButtonPress/ {
if ($15 ~ /1/) {
print "Btn 01 Esq"
} else if ($15 ~ /2/) {
print "Btn 02 Meio"
} else if ($15 ~ /3/) {
print "Btn 03 Dir"
} else if ($15 ~ /4/) {
print "Btn 04, Roda Up"
} else if ($15 ~ /5/) {
print "Btn 05, Roda Down"
}
}

/^KeyPress/ {
sub(")", "", $16)
print "Key:" $16
}


xev -event keyboard -event mouse|awk -f awk.out 

Btn 01 Esq
Btn 02 Meio
Btn 03 Dir
Btn 04, Roda Up
Btn 05, Roda Down
Key: q
Key: w
Key: e
Key: r
Key: t
Key: y


TUDOEMUMALINHA....
 xev -event keyboard -event mouse|awk 'BEGIN{RS="\n\n";FS="[\n,]"} /^ButtonPress/ {if($15~/1/) print "Btn 01 Esq";else if($15~/2/) print "Btn 02 Meio";else if($15~/3/) print "Btn 03 Dir";else if($15~/4/)print "Btn 04, Roda ↑";else if($15~/5/)print "Btn 05, Roda ↓"};/^KeyPress/ {sub(")","",$16);print  "Key:"$16 }' 

----------------------------------------------------------------------------------------------------------------
xev |awk 'BEGIN{RS;FS;} /FILTRO 01/ {if(condição)print;else if(condição)print.....};/FILTRO 02/ {print}'
______________________________________________________________________
Importante:
Se te Ajudei, RETRIBUA!
Marque o TÓPICO como RESOLVIDO, e, escolha a MELHOR RESPOSTA,
Dessa forma me ajuda e ajuda os outros com a mesma dúvida.....

----------------------------------------------------------------------------------------------------------------
lynx --dump https://www.vivaolinux.com.br/termos-de-uso/|sed -nr '/^[ ]+Se/,/dou.$/p'
______________________________________________________________________
Nota de esclarecimento:
O comando: ACIMA, faz parte da minha assinatura.
Att.: Marcelo Oliver
______________________________________________________________________


3. Re: AWK - remover palavra KEY: quando uso o mouse [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 15/01/2022 - 17:46h


Pinguino escreveu:

Estou usando o comando abaixo para fazer um Screenkey (Programa que mostra as teclas pressionadas), mas sempre que uso o mouse aparece a palavra KEY: e ela só deveria aparecer quando eu uso o teclado

xev | awk -F ' ' '{gsub("),", "")} /^KeyPress|^ButtonPress/ { a[NR+2] } NR in a {if($4 == "1,") {print "MOUSE: Left Click"}
{if($4 == "2,") {print "MOUSE: Middle Click"}}
{if($4 == "3,") {print "MOUSE: Right Click"}}
{if($4 == "4,") {print "MOUSE: Wheel Up"}}
{if($4 == "5,") {print "MOUSE: Wheel Down"}}
{print "KEY: " toupper($7)} }'


output

MOUSE: Left Click
KEY:


a palavra KEY: não deveria aparecer quando eu uso o mouse
ex:


MOUSE: Left Click


Boa tarde.
O problema ocorre pq filtra por /^KeyPress|^ButtonPress/.
E a ultima linha do awk, é "printada", independentemente do que foi "casado"
Separe os filtros....



______________________________________________________________________
Importante:
lynx --dump https://www.vivaolinux.com.br/termos-de-uso/|sed -nr '/^[ ]+Se/,/dou.$/p'
______________________________________________________________________
Nota de esclarecimento:
O comando: ACIMA, faz parte da minha assinatura.
Att.: Marcelo Oliver
______________________________________________________________________



4. Como?

Alex Machado Fontinelli
Pinguino

(usa Debian)

Enviado em 15/01/2022 - 23:32h


Tem algum exemplo de como eu poderia fazer ???


5. Caramba !

Alex Machado Fontinelli
Pinguino

(usa Debian)

Enviado em 16/01/2022 - 01:57h


Aonde posso aprender e me aprimorar no awk ?


6. Re: AWK - remover palavra KEY: quando uso o mouse [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 16/01/2022 - 12:27h

Pinguino, agradeço pela melhor Resposta.
Tudo que aprendi sobre awk/gawk, foi com material da internet e muito estudo.


______________________________________________________________________
Att.: Marcelo Oliver
______________________________________________________________________







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts