Ubuntu系统设置开机自动运行程序

Ubuntu系统设置开机自动运行程序

Ubuntu系统设置开机自动运行程序

运行环境: ubuntu18.04、python3.6、tkinter
运行效果: 开机之后自动打开teminal并执行设定好的程序,进入系统后每次打开terminal都会执行一次设定的程序。
程序功能: 设置提醒,与键盘按键关联,按任意键进行退出该脚本程序。


创建Python脚本:tkinter_time.py

'''
import time 

count = 0
a = 30
while (count <= a):
	count_now = a - count
	print(count_now)
	time.sleep(1)
	count += 1
print("DONE")
'''




import tkinter
import time
import sys


count = 0
a = 120
def gettime():
	global count, a
	if count <= a:
		count_now = a - count
		# print(count_now)
		# time.sleep(1)
		count += 1
     
		# time_local = time.strftime("%H:%M:%S")
		# var.set(time_local)   # 获取当前时间
		# print(count_now, count)

		var.set(count_now)
		root.after(1000,gettime)   # 每隔1s调用函数 gettime 自身获取时间
	else:
		sys.exit()



# 设置窗口属性
root = tkinter.Tk()
root.title('河科大重点实验室 提示')
# root.geometry('640x240')

tk_width = 640  # 窗口的宽度
tk_height = 300 # 窗口的长度

root.geometry(f'{tk_width}x{tk_height}+{500}+{300}') # 窗口的大小与位置
root.resizable(False, False) # 窗口大小不可变



var=tkinter.StringVar()
lb = tkinter.Label(root,textvariable=var,fg='blue',font=("黑体",30))
# lb.pack()
lb.place(relx=0.45, rely=0.05)

lb2 = tkinter.Label(root,text='请在虚拟机运行程序',\
        bg='#d3fbfb',\
        fg='red',\
        font=('华文新魏',20),\
        width=20,\
        height=2)
# lb2.pack()
lb2.place(relx=0.2, rely=0.3)


lb3 = tkinter.Label(root,text='本系统未进行备份,为保持系统稳定性,请在虚拟机中运行程序',\
        bg='#d3fbfb',\
        fg='red',\
        font=('华文新魏',10),\
        width=50,\
        height=2)
# lb2.pack()
lb3.place(relx=0.15, rely=0.65)

lb4 = tkinter.Label(root,text='按任意键退出',\
        bg='#d3fbfb',\
        fg='red',\
        font=('华文新魏',10),\
        width=10,\
        height=1)
# lb2.pack()
lb4.place(relx=0.4, rely=0.85)


gettime()


def func(event):
        sys.exit()
        
#<Key> 响应所有的按键
root.bind("<Key>",func)



root.mainloop()

tkinter_time.py脚本放入一个固定的文件夹内,比如我选择的~/Public文件夹


接着执行如下操作步骤:

1、Ctrl+Alt+T打开命令行,输入 gedit ~/.bashrc (或者用vi等打开也可以),打开 .bashrc文件后如下图所示:
在这里插入图片描述.bashrc文件里面添加自己执行程序的命令。

python3 ~/Public/tkinter_time.py

保存后执行source ~/.bashrc使环境变量起作用。

终端中输入gnome-session-properties打开Ubuntu开机首选项管理,如图所示
在这里插入图片描述点击上图中的“添加”按钮,如图所示,在下图中名称和注释随便填写,命令里填写:gnome-terminal,点击“添加”。


最后,如果开机不方便输入密码,比如使用工控机时,可以设置为用户自动登录。
1、点击Ubuntu最右上角的设置按钮,点击系统设置…,选择用户账户
在这里插入图片描述
2、点击右上角“解锁”按钮,此处会弹窗要求输入密码,再打开自动登录。
3、运行sudo reboot进行重启。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/2154.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 最新Eric Python IDE 安装方法Eric6_17.04.1 + PyQt5_5.8.2[通俗易懂]

    博主是一名新入Pyhton坑的技术小白,一直在寻找更适合自己的PythonIDE,语是准备尝试EricPythonIDE,但是网上找到的安装教程和当前最新版本不一样了,于是经过一番折腾,博主记录下了如何安装最新版本Eric617.04.1以及PyQt5.82。也希望通过本文能帮助到和博主一样的新手同学

    2022年4月14日
    166
  • sigmoid函数解析式_phonetic函数

    sigmoid函数解析式_phonetic函数Sigmoid函数,即f(x)=1/(1+e-x)。是神经元的非线性作用函数。广泛应用在神经网络中。神经网络的学习是基于一组样本进行的,它包括输入和输出(这里用期望输出表示),输入和输出有多少个分量就有多少个输入和输出神经元与之对应。最初神经网络的权值(Weight)和阈值(Threshold)是任意给定的,学习就是逐渐调整权值和阈值使得网络的实际输出和期望输出一致。给定以下的总输

    2025年8月22日
    4
  • 冒泡排序(交换)

    冒泡排序(交换)

    2021年8月14日
    58
  • Java中接口作用的理解[通俗易懂]

    Java中接口作用的理解[通俗易懂]关于Java中接口作用的深入理解。这是个很容易遇到的问题吧,看下面红色的部分应该就能理解了。/2019/3/1补充:接口的存在也是为了弥补类无法多继承的缺点,假设一个情况,父类–Animal子类–Dog、Cat、People、Sheep、Tiger、Lion。假设在Animal中都存在eat()这个公有的方法。但是Tiger和Lion、People还拥有…

    2022年5月12日
    35
  • yum linux centos安装mysql详细教程[通俗易懂]

    yum linux centos安装mysql详细教程[通俗易懂]1、前往如下地址下载https://dev.mysql.com/downloads/repo/yum/(访问较慢,文末也会附上下载地址)我的系统是centos7,选择linux7即可2、点击download,进入下载页面这里点鼠标右键–复制链接地址即可(https://dev.mysql.com/get/mysql80-community-release-el7-3.noar…

    2022年6月26日
    35
  • mysql卸载和重新安装失败_MySQL安装失败

    mysql卸载和重新安装失败_MySQL安装失败卸载MySQL

    2022年9月25日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号