离线存储库和软件删除

离线存储库和软件删除

我阅读了此处的流程并提出了以下脚本:

for i in `ls -1 /var/cache/apt/archives` ; do sudo cp /var/cache/apt/archives/$i /home/jj/Documents/Repository ; done

并重新安装:

sudo dpkg -i /home/jj/Documents/Repository/*.deb

问题: 我怎样才能删除这些(以及它们的依赖关系?)通过脚本重新安装之前?

aisleriot
evolution
evolution-common
evolution-data-server
evolution-exchange
evolution-indicator
evolution-plugins
gbrainy
gnome-mahjongg
gnome-sudoku
gnomine
gwibber
gwibber-service
libevolution
openoffice.org-draw
openoffice.org-impress
quadrapassel

感谢您的时间。

我现在明白了此链接我选择了这个方法:sudo apt-get remove -y $package 然后可能还会使用 cleandeb。有什么建议吗?

谢谢你!

答案1

有一个 bash 脚本用于删除软件包后删除依赖项。

#!/bin/bash

OLDCONF=$(dpkg -l|grep "^rc"|awk '{print $2}')
CURKERNEL=$(uname -r|sed 's/-*[a-z]//g'|sed 's/-386//g')
LINUXPKG="linux-(image|headers|ubuntu-modules|restricted-modules)"
METALINUXPKG="linux-(image|headers|restricted-modules)-(generic|i386|server|common|rt|xen)"
OLDKERNELS=$(dpkg -l|awk '{print $2}'|grep -E $LINUXPKG |grep -vE $METALINUXPKG|grep -v $CURKERNEL)
YELLOW="\033[1;33m"
RED="\033[0;31m"
ENDCOLOR="\033[0m"

if [ $USER != root ]; then
  echo -e $RED"Error: must be root"
  echo -e $YELLOW"Exiting..."$ENDCOLOR
  exit 0
fi

echo -e $YELLOW"Cleaning apt cache..."$ENDCOLOR
aptitude clean

echo -e $YELLOW"Removing old config files..."$ENDCOLOR
sudo aptitude purge $OLDCONF

echo -e $YELLOW"Removing old kernels..."$ENDCOLOR
sudo aptitude purge $OLDKERNELS

echo -e $YELLOW"Emptying every trashes..."$ENDCOLOR
rm -rf /home/*/.local/share/Trash/*/** &> /dev/null
rm -rf /root/.local/share/Trash/*/** &> /dev/null

echo -e $YELLOW"Script Finished!"$ENDCOLOR

复制脚本并将其粘贴到文本编辑器中。然后以 .sh 扩展名保存文件(即 cleaner.sh)右键单击文件选择属性>>权限并检查执行..

要运行此脚本,请在终端中输入以下内容。

sudo bash /path/to/the/script

相关内容