Mensagem Randômica ao Conectar via SSH

Publicado por Ruhan Bidart 08/06/2008

[ Hits: 6.490 ]

Download script_profile.py




Mostra uma mensagem randômica ao usuário ao conectar via ssh.

Você deve baixar o script, colocá-lo na home do usuário que você deseja que lance a frase e digitar:

>> python nome_do_script_py nome_do_arquivo_de_frases.txt

ou somente

>> python nome_do_script_py

Com o segundo comando o script se encarregará de criar o arquivo de frases.

Agora, para testar, acesse o seu usuário novamente.

Qualquer bug, enviar para ruhanbidart@gmail.com.

  



Esconder código-fonte

#!usr/bin/env python
# -*- coding: utf-8 -*- 
################################################################################
# Sorteia uma frase de um arquivo definido.
#
# @author: Ruhan Bidart <ruhanbidart [at] gmail [dot] com
# @since: 11/04/2008
#################################################################################
from random import random
from os import popen, path
from copy import deepcopy
import sys

COMMAND = 'echo python %(path_script)s %(path_file)s not_install >>  %(path_user)s.bash_profile'
install = True
params = deepcopy(sys.argv)
length = params.__len__()

# verificando os dados que entram
if length < 2:
    params.append('frases.txt')
elif length == 3:
    if params[2].lower() == 'not_install': install = None
elif length > 3:
    raise str('Informe apenas o path do arquivo de frases.')

file_path = params[1]
file_path = path.realpath(file_path)

# caso seja apenas para sortear
if not install:
    try:
        # caso o arquivo nao exista, cria
        f = open(file_path, 'r')
        # sorteando a linha
        lines = f.readlines()
        len_lines = lines.__len__()
        rand_line = int(random()*len_lines)
        print lines[rand_line]
    except IOError, e:
        raise str('Ocorreu um erro ao tentar ler o arquivo.'
                  ' %s. Mensagem original: %s' % (file_path, e))
    finally:
        # liberando o arquivo
        f.flush()
        f.close()
# caso seja pra instalar
else:
    # inserindo a frase inicial
    try:
        f = open(file_path, 'a+')
        f.writelines('Primeira frase de teste, by Ruhan Bidart'
                     ' ruhan@gmail[dot]com. Insira mais, acessando: %s' % file_path)
    except IOError:
        pass
    finally:
        f.flush()
        f.close()

    cmd = COMMAND % {'path_script' : path.realpath(params[0]), 
                     'path_file': file_path, 
                     'path_user': path.expanduser('~/')}    
    try:
        r = popen(cmd)
    except OSError, e: 
        erro = 'Ocorreu um erro ao tentar instalar o script. Mensagem original: %s ' % e
        raise str(erro % e)
    print '-----------------------------------------------------------'
    print 'O script foi instalado com sucesso.'
    print 'Tente logar novamente e veja se a mensagem sera lancada.'
    print 'by Ruhan Bidart -> ruhanbidart@gmail[dot]com'
    print '-----------------------------------------------------------'

Scripts recomendados

Backup em Python

Modificação do Ubuntu Tweak para Debian

Gerador de cartão de crédito com Tkinter

Criador de instalador USB Linux bootável com Python

Crivo de Eratóstenes Simples em Python


  

Comentários
[1] Comentário enviado por sergiomb em 09/06/2008 - 23:39h

o que é que é randomico e sorteando ?
não é ser português, mas queria dizer aleatório e ordenando ?

[2] Comentário enviado por ruhanbidart em 15/09/2008 - 20:09h

A idéia era significar "mensagem aleatória".


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts