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.