Existe alguma maneira de definir uma mensagem de saudação no ubuntu?


20

Eu amo uma citação. Agora eu quero que toda vez que meu computador for iniciado, a citação esteja na tela, como uma nota de boas-vindas. Existe alguma maneira de fazer isso no ubuntu 13.04?

Respostas:


16

Você pode abrir uma caixa de diálogo simples do zenity no login com o conteúdo da sua cotação.

Coloque o seguinte código em um script e adicione-o aos seus "Aplicativos de Inicialização"

zenity --info --text=$quote --title="A Quote"

Usando fortune

Instale o fortune-modpacote ( sudo apt-get install fortune-mod) e, em seguida, integre o fortunecomando ao seu script desta forma:

zenity --info --text="$(fortune literature)" --title="A Quote" --no-wrap

Você pode simplesmente adicionar esse comando aos seus Aplicativos de Inicialização sem colocá-lo em um script.

A literatureopção é usada para especificar que você deseja uma cotação especificamente, caso contrário, ele fornecerá piadas, enigmas e outras 'fortunas'.

Nota: algumas das fortunas são bastante longas, use em --text="$(fortune -s literature)"vez de --text="$(fortune literature)"no comando acima para imprimir apenas aspas curtas.

Captura de tela abaixo: Fortunas em um diálogo

A Fortune também possui muitas opções diferentes para personalizar o tipo de cotação que você receberá (literatura, enigmas etc.). Consulte a página de manual da fortuna para obter mais informações. Para usar essas opções, basta alterar fortuneo comando acima para fortune SOME_OPTION.

Créditos ao FreudianSlip pelo fortunecomando


11
Não tenho certeza se isso ainda é verdade, mas no antigo Unix, o comando "fortuna" ofereceria muitas frases / provérbios diferentes. Eu não estou em uma caixa linux / unix para testar agora, mas tenho certeza que você encontrará referências a ela.
— precisa

lost.sourceforge.net trabalha com a Fortune para melhorar sua habilidade em administração de sistemas.
— K7AAY

@ kiloseven, é claro, você pode substituir o fortunecomando por qualquer comando semelhante a informações que você possa encontrar (pode encontrar).
— Kiri #

O último argumento adotado pelo comando fortune é um nome opcional de arquivo / diretório, para que você possa criar e usar sua própria coleção de citações. Não me lembro do formato exato do arquivo, mas é um arquivo de texto muito simples que você pode manter facilmente usando um editor de texto.
— 21413 Joe

Se você for pop-up, também dê uma olhada no yad. É uma substituição zenity com muitos mais recursos e ótimo suporte.
— 21413 Joe

11

Se você quiser fantasia (como mostrar uma cotação transparente no seu papel de parede, digite alguns lembretes, etc ...):

  1. Abra o terminal pressionando Ctrl+ Alt+T
  2. Vá para "Editar> Perfis> Novo".
  3. Dê um nome a ele (por exemplo, "quote_of_the_day") e clique em Criar .
  4. Clique em Editar, vá para a guia cores e desmarque "usar cores de ...".
  5. Selecione uma cor de texto que ficará visível no papel de parede da área de trabalho.
  6. Vá para a guia plano de fundo e selecione Plano de fundo transparente e defina-o como Nenhum.
  7. Na guia Rolagem, escolha "A barra de rolagem é: desativada ".
  8. Você pode alterar a fonte e o tamanho na guia geral.
  9. Aqui você também pode alterar colunas e linhas para cerca de 50 e 5, respectivamente.
  10. Vá para Título e comando e escolha manter o título inicial na caixa de combinação.

Agora você criou um perfil de terminal para a exibição de cotações. insira a descrição da imagem aqui

Em seguida, faremos uma configuração de compiz para colocá-lo em nosso plano de fundo da área de trabalho e remover essas sombras e decorações.

  • Abra o Compiz Config digitando o terminal ccsm(supondo que você o tenha instalado)
  • Clique em Regras da janela e faça o seguinte: insira a descrição da imagem aqui

  • Clique em Inserir Windows e faça o seguinte: insira a descrição da imagem aqui
  • Nota : as posições 600 x e 100 y devem ser alteradas de acordo com a resolução da tela. (isso coloca em algum lugar no canto superior direito)
  • Vá para Decoração da janela e faça o seguinte: insira a descrição da imagem aqui



Agora copie e cole o script abaixo no gedit e salve-o como quote_script.py

import commands
from time import sleep
import random

quotefile = "/home/user/Documents/.../quotes.txt"
interval = 10

with open(quotefile,'rb') as data: quotes = data.readlines()
print "\x1b[?25l"+random.choice(quotes)[:-1]
sleep(interval)
exit()

Altere o arquivo e o intervalo de acordo com o local do arquivo e o tempo de exibição da cotação.
Vá para aplicativos de inicialização digitando terminal: gnome-session-properties . Adicione um novo clicando em adicionar e digite:

  • Nome :

    Daily Quotes

  • Comando :

    gnome-terminal --window-with-profile=quote_of_the_day -e "python /home/user/Documents/.../quote_script.py"
    
  • Comentário :

    Mostrar aspas aleatórias no login


É isso aí! Você pode tentar sair e entrar novamente para ver o resultado.

Resultado final:

insira a descrição da imagem aqui
- Experiência com valores de colunas e linhas de terminais; Posicione valores, intervalo, cores da fonte etc. Lembre-se de colocar aspas no arquivo quotes.txt, linha por linha.


Resposta agradável e melhor com python, mas não a resposta mais fácil ou mais simples. Eu também sugeriria desativar 'Sem foco' e adicionar um input("Press enter...")para descartar a caixa de diálogo manualmente. Além disso, o modo binário não é 'rb'lido ?
— Kiri13

sim, uma boa prática para a leitura de caracteres Unicode, caracteres de controle etc. rapenas lê texto simples e \n, \t. Além disso, a cotação desaparece automaticamente em 10 segundos (conjunto do usuário).
— Python Student

2

Digamos que você tenha todas as suas cotações em um arquivo chamado quotes.txt(cada cotação em uma linha) salvas em algum lugar, digamos ~/Documents. Em seguida, usando o terminal, você pode:

  1. Crie um novo arquivo / script greeting.shem seu ~/bindiretório:

    mkdir -p ~/bin #this command will make a bin directory in your home folder if you don't already have it
    gedit ~/bin/greetings.sh
  2. Se você deseja receber uma notificação na área de trabalho, insira as próximas 2 linhas:

    #!/bin/bash
    
    quotes="$HOME/Documents/quotes.txt"
    random_line=$(shuf -i 1-$(wc -l < $quotes) -n 1)
    quote=$(sed -n -e "$random_line"p $quotes)
    notify-send "Quote of the day" "$quote"

    Alternativamente, se você quiser um pop-up (caixa de mensagem) para mostrar-se, use zenityao invés notify-send:

    zenity --info --title  "Quote of the day" --text "$quote"
  3. Salve o arquivo e feche-o.

  4. Torne o arquivo exacutável:

    chmod +x ~/bin/greetings.sh
    
  5. Pesquise no Dash por aplicativos de inicialização , abra-o e clique em Adicionar .

  6. Sob o nome, digite "Mostrar meu nome e data" ou algo que você reconhecerá.
  7. Em tipo de comando: /home/$USER/bin/greetings.sh(mude $USERcom seu nome de usuário).
  8. Em comentário (se desejar), digite uma breve descrição.

Relacionado: Como mostro uma mensagem com nome de usuário e data no login?


11
Seu script pode ser simplificado usando apenas quote=$(shuf -n 1 "$quotes")- não há necessidade de chamadas sed ou wc, pois shuf -n 1 fileele fornecerá uma linha aleatória de um arquivo por si só.
— evilsoup

0

Várias respostas aqui, nenhuma foi simples o suficiente para mim.

Acabei instalando o Variety , que pode escrever citações aleatórias em papéis de parede para fontes diferentes, no meu caso, a partir de um arquivo local.


Bem-vindo ao AskUbuntu! Essa resposta seria muito melhorada se você realmente explicasse como escrever citações aleatórias em papéis de parede com Variety.
— Elder Geek
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.