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

Publicado por Roberto Fettuccia (última atualização em 10/11/2012)

[ Hits: 6.357 ]

Download wallperid.sh

Download wallperid2.1 (versão 2)

Download 1352193200.wallperid.sh (versão 3)




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.

  



Versões atualizadas deste script

Versão 2 - Enviado 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


Versão 3 - Enviado 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 


Scripts recomendados

Configuração de VLANs

Conexão Remota Linux No Windows

Script simples para fazer backup em fita DAT

Baixando fotos de uma câmera digital pela USB

ADMINISTRANDO USUARIOS COM XDIALOG


  

Comentários
[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




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts