msoliver
(usa Debian)
Enviado em 29/05/2021 - 23:05h
patrickcarpezani escreveu:
Bom dia pessoal!
Estou aprendendo um pouco sobre o poderoso comando "sed" tenho a seguinte situação
Comando: last -w --time-format iso | grep "still logged in" | sed -r 's/^.{41}//g;s/.{24}$//g'
Estou fazendo separação de dois comandos com o: ;
Como posso unir ^.{41} + .{24}$ em um só comando (que no meu caso seria o de substituição s/)
Agradeço pelo ajuda.
Atenciosamente,
Boa noite patrickcarpezani.
Segue:
last -w --time-format iso|grep 'still logged in'|sed -r 's/^.{41}|.{24}$//g'
Uma outra opção, é o awk:
Supondo que deseja a data:
last -w --time-format iso|awk -F '[ ]+' '/still logged in/ {print $4}'
Ou ainda:
last -w --time-format iso|awk '/still logged in/'|grep -Eo '[0-9:T-]{25}'
Excluindo os espaços consecutivos....
last -w --time-format iso|sed 's/ \+/ /g'
É isso.....
______________________________________________________________________
Importante: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p'
Att.: Marcelo Oliver
______________________________________________________________________
Nota de esclarecimento:
O comando:
lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p',
faz parte da minha assinatura.
O qual, "filtra" a página: "https://www.vivaolinux.com.br/termos-de-uso/",
Mostrando o seguinte:
Se você sanou sua dúvida ou resolveu um problema a partir de um
tópico criado, é extremamente recomendável que acesse o tópico e
marque-o como "RESOLVIDO". E mais recomendável ainda que você eleja
como melhor resposta a que mais lhe ajudou.
______________________________________________________________________