Answers:
您可以在登录时弹出一个简单的“ zenity”对话框,其中包含报价内容。
将以下代码放入脚本中,然后将该脚本添加到“启动应用程序”中
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 SOME_OPTION
。
fortune
命令替换为您拥有(可以找到)的任何类似于信息的命令。
如果您想看点东西(例如在墙纸上显示透明的报价,输入一些提醒等信息……):
现在,您已经为报价显示创建了一个终端配置文件。
接下来,我们将进行compiz设置,以将其置于桌面背景中,并删除那些阴影和装饰。
ccsm
(假设您已安装)
现在,将以下脚本复制并粘贴到gedit中,并将其另存为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()
更改quotefile和间隔,以满足您的文件位置和报价显示时间。通过输入terminal:gnome-session-properties
进入启动应用程序。单击添加添加一个新的并输入:
名称:
每日行情
命令:
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
这将使您从文件本身中随机得到一行。