1:写任何项目之前要制定规划阶段
自动迁移项目脚本
思路一:失败
先利用os.system执行命令判断软件是否存在,发现不能返回信息,然后使用os.popen模块,该模块返回一个特殊类, 可以对这个返回值进行read方法进行查看
re 模块正则表达式
re.split(’’, text)根据输入的正则来进行分割
re.findall(’’, text)根据输入的正则来查找符合的字段
思路二
应灵活使用linux命令,popen结合which命令判断返回值 来判断软件是否存在
项目规划
先创建要下载软件包的文件,创建函数判断该软件包是否存在,将文件安装和未安装信息写入一个JSON文件
将未安装的软件进行apt下载,此处应该开线程并且使用GIL锁进行控制,考虑到apt的锁问题,判断命令执行完成(可能存在问题)
更新文件信息
将未安装成功的软件进行wget下载,此处以来一个json文件,文件内是软件包对应的链接,开进程进行下载,解压软件包,并且软链接
最后更新软件状态