Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何在没有依赖项的情况下从特定repo中删除所有包_Linux_Command Line_Centos_Repository_Centos6.5 - Fatal编程技术网

Linux 如何在没有依赖项的情况下从特定repo中删除所有包

Linux 如何在没有依赖项的情况下从特定repo中删除所有包,linux,command-line,centos,repository,centos6.5,Linux,Command Line,Centos,Repository,Centos6.5,我知道下面的代码将从特定的回购中删除所有包 yum remove $(yum list installed | grep rpmforge | awk '{ print $1 }') 下面的代码将删除没有依赖项的包 rpm -e --nodeps "php-sqlite2-5.1.6-200705230937" 但我不知道如何一起使用。请尝试以下命令: rpm -e --nodeps `yum list installed | grep rpmforge | awk '{ print $1

我知道下面的代码将从特定的回购中删除所有包

yum remove $(yum list installed | grep rpmforge | awk '{ print $1 }')
下面的代码将删除没有依赖项的包

rpm -e --nodeps "php-sqlite2-5.1.6-200705230937"

但我不知道如何一起使用。

请尝试以下命令:

rpm -e --nodeps `yum list installed | grep rpmforge | awk '{ print $1 }'`

打印所有存储库的列表以获取repo id(第一列):

现在删除所选回购的所有包:

# dnf repository-packages <repo-id> remove
#删除dnf存储库包

有关使用特定存储库中的所有软件包进行操作的详细信息,请参见dnf的“存储库软件包”部分。

检查以确保仅删除您想要删除的内容。

dnf list installed | grep package_name.i686 | awk '{ print $1 }' | less
实际执行删除操作

sudo rpm -e --nodeps `dnf list installed | grep package_name.i686 | awk '{ print $1 }'`
我喜欢使用

yum-y autoremove
yum list installed | grep rpmforge | awk'{print$1}'
注意,这也将卸载从其他repo安装的任何依赖项。您也可以使用
awk
进行搜索。例如,
yum list installed | awk'($3~“rpmforge”){print$1}{xargs rpm-E--nodeps
yum-y autoremove$(yum list installed | grep ius | awk{print$1}')
对于fyi,当您通过管道输出yum时,它并不总是在一行上打印条目。(多么令人沮丧啊???)如果有一个包的名称很长,来自您感兴趣的回购协议,它可能会在一行上显示包名,然后是换行,然后是版本和回购列。这意味着您对repo名称的grep可能无法捕获关联的包名称,并且您的命令无法工作。没有办法让它工作。要了解我在说什么,请执行“安装了百胜列表|更少”。
sudo rpm -e --nodeps `dnf list installed | grep package_name.i686 | awk '{ print $1 }'`