📅  最后修改于: 2023-12-03 15:22:50.961000             🧑  作者: Mango
在编写软件时,我们可能会编写一些自制的软件包。但是,当我们需要卸载这些软件包时,手动卸载每个软件包是极其繁琐的。在这种情况下,编写一个脚本来卸载所有的自制软件包可以极大地方便我们的工作。下面是一个使用 Shell-Bash 编写的卸载所有自制软件包的脚本。
#!/bin/bash
# 遍历所有的自制软件包
for dir in /usr/local/*; do
if [ -d "${dir}" ]; then
package=$(basename "${dir}")
# 判断当前软件包是否是自制的软件包
if dpkg -l | grep -q "^ii.*${package}.*"; then
# 卸载当前软件包
sudo apt-get remove ${package} -y
fi
fi
done
本脚本会遍历 /usr/local/
目录下的所有文件夹,如果某个文件夹是一个目录,那么这个目录就代表一个自制的软件包。随后,本脚本通过 dpkg
命令的输出信息来确定该软件包是否已安装,如果软件包已安装,则本脚本使用 apt-get remove
命令卸载该软件包。
卸载过程中的 -y
参数为自动确认卸载操作,可以确保卸载过程不会出现暂停等等需要手动操作的提示。
使用本脚本卸载所有自制软件包,可以避免手动卸载带来的大量重复劳动。
本脚本适用于编写或安装了较多自制软件包的 Linux 系统管理者或程序员。