Pular para o conteúdo

WallpaperID - papel de parede com IP e kernel do usuário

Trabalho com estações Ubuntu, quando preciso conectar com a estação de um usuário e não sei o IP, precisava que o usuário utilizasse o terminal descobri-lo.

Solução: Desenvolvi um script para coletar os dados do equipamento e colocar em um arquivo de imagem, que fica setado como wallpaper na sessão do usuário no Gnome.

TESTADO SOMENTE COM PNG.

Modo de uso:

$ ./script.sh [path da imagem]  [eixo X] [eixo Y] [Tamanho fonte]
  
Exemplo:

$ ./script.sh /home/roberto/wallp.png 10 10 20

Pode ser colocado no rc do usuário em /home/usuário/.bashrc para iniciar automaticamente no login do usuário, ou se tiver vários usuários no terminal gráfico, coloque o caminho do script dentro de /etc/rc.local.

Obs.: Este script só edita um arquivo png já existente e não sobrescreve o arquivo, simplesmente gera outro arquivo com as informações desejadas.

Na próxima versão pretendo automatizar a path do arquivo gerado como papel de parede.
Roberto Fettuccia rpaulafettuccia
Hits: 6.972 Categoria: Shell Script Subcategoria: Avançado
  • Download
  • Nova versão
  • Indicar
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Descrição

Trabalho com estações Ubuntu, quando preciso conectar com a estação de um usuário e não sei o IP, precisava que o usuário utilizasse o terminal descobri-lo.

Solução: Desenvolvi um script para coletar os dados do equipamento e colocar em um arquivo de imagem, que fica setado como wallpaper na sessão do usuário no Gnome.

TESTADO SOMENTE COM PNG.

Modo de uso:

$ ./script.sh [path da imagem]  [eixo X] [eixo Y] [Tamanho fonte]
  
Exemplo:

$ ./script.sh /home/roberto/wallp.png 10 10 20

Pode ser colocado no rc do usuário em /home/usuário/.bashrc para iniciar automaticamente no login do usuário, ou se tiver vários usuários no terminal gráfico, coloque o caminho do script dentro de /etc/rc.local.

Obs.: Este script só edita um arquivo png já existente e não sobrescreve o arquivo, simplesmente gera outro arquivo com as informações desejadas.

Na próxima versão pretendo automatizar a path do arquivo gerado como papel de parede.
Download wallperid.sh Enviar nova versão
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Versões atualizadas deste script

Roberto Fettuccia

Versão 2 enviada por Roberto Fettuccia em 29/10/2012

Changelog: Segue uma pequena atualização, agora este script força, no Gnome, a imagem resultante a tornar-se um papel de parede.

Download wallperid2.1

M4iir1c10

Versão 3 enviada por M4iir1c10 em 06/11/2012

Changelog: O que você acha da minha versão (2.2)?

1. Automaticamente cria a pasta .wallid dentro do home do usuário e salva o arquivo ali dentro,;

2. Também mudei a maneira de encontrar a interface da rede, algumas distros precisam do caminho exato para o ifconfig e alguns usuários não tem o /sbin dentro do PATH, então eu estou colocando o caminho completo

3. Estou usando o route para determinar qual interface está ativa, evitando assim confusão com outras interfaces que existem, porém não estão ativas

4. Filtrando a extensão do arquivo para evitar dupla extensão, tipo .jpg.png ou .png.png etc.

Download 1352193200.wallperid.sh

Esconder código-fonte


#!/bin/bash

IMGoriginal=$1 # 
Xscreen=$2 # posição do texto no eixo X dentro da imagem
Yscreen=$3 # posição do texto no eixo Y dentro da imagem
Sfont=$4  # tamanho da fonte
KERNELLOAD="$(uname -r)"
unset interfaces[@]
unset IPX
unset L
unset Xint
Xfailmsg="Sem conexao ativa!"


Xface=(eth0 eth1 eth2 eth3 eth4 ppp0 ppp1 ppp2 wlan0 wlan1 wlan2 wlan3 lo)
total="${#Xface[@]}"

for i in $total
do 
  Xint="${Xface[i]}"
  IPX=""
  echo "$Xface"
  IPX="$(ifconfig $Xint | awk '/: / { gsub(".* ", " ", $1 ) ; print $3}' | cut -f2 -d":" | sed 1q)"
  if ! [ "$IPX" == "" ] || [ "$IPX" == " " ] && [ "$IPX" != "127.0.0.1" ];
  then
      IP="$IPX - Interface :$Xface"
  else 
      if [ "$i" -eq "$total" ] || [ "$IPX" == "127.0.0.1" ];
      then
       IP="$Xfailmsg"
      fi
  fi
done

convert $IMGoriginal -pointsize $Sfont -stroke "yellow" -draw "text $Xscreen,$Yscreen 'Kernell $KERNELLOAD' text $Xscreen, $((Yscreen+2+Sfont)) 'Usuário : $USER' text $Xscreen, $((Yscreen+2+(Sfont*2))) 'Host : $HOSTNAME' text $Xscreen, $((Yscreen+2+(Sfont*3))) 'IP : $IP'" $IMGoriginal.conv.png 

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Select tempfiles - Database Oracle

Instalação - Servidor de e-mail

facilitando e organizando a configuracao do mrtg com ipfm

Java 7/8 - Instalação automatizada no Ubuntu

Firewall básico

#1 Comentário enviado por leandro.paulo em 21/08/2015 - 09:27h
Ótima dica meu amigo, estava procurando algo deste modelo. Testei aqui e funcionou de boa.. muito obrigado... parabéns!!!

Contribuir com comentário

Entre na sua conta para comentar.