Я люблю цитату. Тепер я хочу, щоб щоразу, коли мій комп'ютер запускається, цитата виходила на екран, як вітальна записка. Чи є якийсь спосіб зробити це в ubuntu 13.04?
Я люблю цитату. Тепер я хочу, щоб щоразу, коли мій комп'ютер запускається, цитата виходила на екран, як вітальна записка. Чи є якийсь спосіб зробити це в ubuntu 13.04?
Відповіді:
Ви можете спливати просте діалогове вікно про вхід із вмістом вашої цитати.
Помістіть наступний код у сценарій, а потім додайте його до "Запуск програм"
zenity --info --text=$quote --title="A Quote"
fortuneВстановіть fortune-modпакунок ( sudo apt-get install fortune-mod), тоді ви можете інтегрувати fortuneкоманду у свій сценарій так:
zenity --info --text="$(fortune literature)" --title="A Quote" --no-wrap
Ви можете просто додати цю команду до своїх програм запуску, не додаючи її до сценарію.
Цей literatureпараметр використовується для вказівки, що ви хочете цитати конкретно, інакше вона дасть вам жарти, загадки та інші «статки».
Примітка: деякі статки досить довгі, використовуйте --text="$(fortune -s literature)"замість --text="$(fortune literature)"команди вище, щоб надрукувати лише короткі лапки.
Скріншот нижче:

У Fortune також є багато різних варіантів, щоб налаштувати тип котирувань, які ви отримаєте (література, загадки тощо). Для отримання додаткової інформації дивіться сторінку " Fortune man" . Щоб використовувати ці параметри, просто змініть fortuneкоманду вище на fortune SOME_OPTION.
fortuneкоманду будь-якою інформаційно-подібною командою, яку ви маєте (можете знайти).
Якщо ви хочете пофантазувати речі (наприклад, показати прозору цитату на шпалерах, введіть нагадування тощо):
Тепер ви створили термінальний профіль для відображення лапок.
Далі ми зробимо параметр compiz, щоб розмістити його на тлі робочого столу та видалити ті тіні та прикраси.
ccsm(якщо припустимо, що він встановлений)


Тепер скопіюйте та вставте нижченаведений скрипт у gedit та збережіть його як quo_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()
Зміна файлу цитат та інтервал відповідно до місця розташування файлу та часу відображення цитат.
Перейдіть до запуску програм , ввівши термінал: gnome-session-властивості . Додайте новий, натиснувши додати та введіть:
Ім'я :
Щоденні котирування
Команда :
gnome-terminal --window-with-profile=quote_of_the_day -e "python /home/user/Documents/.../quote_script.py"
Коментар :
Показати випадкові лапки під час входу
Це воно! Ви можете спробувати вийти та знову, щоб побачити результат.
- Експериментуйте з кінцевими значеннями стовпців та рядків; Значення позиції, інтервал, кольори шрифту тощо. Не забудьте ставити лапки у файл quotes.txt рядок за рядком.
input("Press enter...")щоб діалогове вікно відхилити. Також не 'rb'читається двійковий режим?
rпросто читає простий текст і \n, \t. Також цитата автоматично зникає через 10 секунд (набір користувача).
Скажімо, що у вас є всі цитати в одному файлі під назвою quotes.txt(кожна цитата в одному рядку), десь збережені ~/Documents. Потім, використовуючи термінал, ви можете зробити:
Створіть greeting.shу вашому ~/binкаталозі новий файл / скрипт :
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Якщо ви хочете отримати сповіщення на робочому столі, помістіть наступні два рядки:
#!/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"
Крім того, якщо ви хочете, щоб з'явилося спливаюче вікно (поле повідомлень), використовуйте zenityнатомість notify-send:
zenity --info --title "Quote of the day" --text "$quote"Збережіть файл і закрийте його.
Зробіть файл вичерпним:
chmod +x ~/bin/greetings.sh
Знайдіть у Dash додатки для запуску , відкрийте його та натисніть кнопку Додати .
/home/$USER/bin/greetings.sh(змініть $USERсвоє ім’я користувача).Пов’язано: Як відображати повідомлення з ім'ям користувача та датою при вході в систему?
quote=$(shuf -n 1 "$quotes")- немає необхідності в дзвінках sed або wc, оскільки shuf -n 1 fileвін дасть вам випадковий рядок з файлу сам по собі.
Тут кілька відповідей, жодна для мене не була досить простою.
Я закінчив встановити Variety , який може чудово писати випадкові цитати на шпалери для різних джерел, у моєму випадку з локального файлу.