今天因为前天文件系统崩溃而重装,然后觉得重装真是很麻烦呐,不过基本上都是重复劳动,所以,把一些常用的重装后的动作自动化实现吧。
这算是之前的那篇《为 shell 脚本添加交互界面》的实践吧。
#!/bin/bash # 说明:请使用bash命令运行脚本,否则会报错 # 清空终端 clear # 构建图形化界面 GUI=$(zenity --list --checklist / --height="600" / --width="1000" / --title="重装后快速配置工具" / --text="请从下面列表中选择需要设置或安装的项目" / --column="选择" --column="操作" --column="描述" / TRUE "更新系统" "更新系统及应用软件包" / FALSE "安装 zsh" "包括 oh-my-zsh 和 powerline 等工具" / FALSE "设置 .zshrc" "加入常用的 alias 配置以及常用系统环境" / FALSE "安装 Typora" "还不错的 Markdown 编辑器" / FALSE "安装 Geary" "安装邮件客户端,可后台收邮件并提醒" / FALSE "安装 Nextcloud" "私人云同步工具的客户端" / FALSE "安装 FileZilla" "不错的 FTP 客户端工具" / FALSE "安装 Seahorse" "系统密钥管理工具" / FALSE "安装 Shadowsocks" "Shadowsocks 客户端(GUI)" / FALSE "安装 Easystroke" "安装鼠标手势工具" / # # 这里面还有很多很多,总之自己根据自己的情况写上去。 # FALSE "自动挂载磁盘" "挂载我电脑的其他分区" / FALSE "安装 Go 环境" "Go 语言开发环境" / FALSE "安装 Java 环境" "Java 语言开发环境" / TRUE "修复软件依赖" "修复软件包依赖,修复无法启动的软件包" / TRUE "清理软件包" "删除系统冗余的软件包及清理本地软件包缓存" / --separator="|"); if [[ $GUI ]] then # # 下面是两个示例,实际上就是把自己的操作自动化执行罢了。 # # 更新系统操作 if [[ $GUI == *"更新系统"* ]] then clear echo "正在更新系统" echo "" sudo apt -y update sudo apt -y full-upgrade fi # 安装 zsh if [[ $GUI == *"安装 zsh"* ]] then clear echo "正在安装 zsh" echo "" sudo apt -y install zsh curl sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" fi # # 这里继续补充你的操作 # # 修复损坏的软件包操作 if [[ $GUI == *"修复损坏的软件包"* ]] then clear echo "正在修复损坏的软件包" echo "" sudo apt -y -f install fi # 清理软件包操作 if [[ $GUI == *"清理软件包"* ]] then clear echo "正在清理软件包" echo "" sudo apt -y autoremove sudo apt -y autoclean fi # 完成信息 clear echo "配置完成,部分配置重启后生效。" notify-send -i utilities-terminal 我的快速配置工具 "配置完成,部分配置重启后生效。" fi
因为每个人的操作都不同,我就不贴完整的代码了,完整源代码可以看这里:(我还没写完,笑。写完补充。)