centos 删除指定文件之外的其他文件

摘要:
在Linux中删除指定文件以外的文件。1.在Linux中删除文件和文件夹的常用命令如下:删除文件:rmfilewww.2cto.com删除文件夹:rm rfdir。注意,rmdir只能删除空文件夹。
linux下删除指定文件之外的其他文件
 
一、Linux下删除文件和文件夹常用命令如下:
删除文件: rm file  www.2cto.com  
删除文件夹: rm -rf dir
需要注意的是, rmdir 只能够删除 空文件夹。
 
二、删除制定文件(夹)之外的所有文件呢?
 
1、方法1,比较麻烦的做法是:
复制需要保留的文件到其他文件夹,然后将该目录删除, 然后将需要保留的移动 回来。
mv keep ../ #保留文件(夹) keep
rm -rf * #删除当前文件夹里的所有文件
mv ../keep ./ #将原来的东西移动回来
 
2、方法2,当前文件夹中结合使用grep和xargs来处理文件名:
ls | grep -v keep | xargs rm #删除keep文件之外的所有文件
说明: ls先得到当前的所有文件和文件夹的名字, grep -v keep,进行grep正则匹配查找keep,-v参数决定了结果为匹配之外的结果,也就是的到了keep之外的所有文件名,然后 xargs用于从 标准输入获得参数 并且传递给后面的命令,这里使用的命令是 rm,然后由rm删除前面选择的文件。
好处:使用了grep来正则表达式来匹配文件名字,可以一次保留多个文件,从而进行更加准确的处理。
 
3、方法3,使用find命令代替ls,改进方法3从而能够处理制定文件夹的文件:
find ./test/ | grep -v keep | xargs rm #删除当前test文件夹中keep文件之外的所有文件
说明,用grep而不用find -name选取名字,因为find选取名字时比较麻烦,对正则表达式支持不够,无法排除指定文件名。
 
4、方法4,直接使用find命令删除其他文件:
find ./ -name '[^k][^e][^e][^p]*'  -exec rm -rf {} \; #删除keep以外的其他文件。
find ./ -name '[^k][^e][^e][^p]*'  | xargs rm -rf  #删除keep以外的其他文件。推荐!
说明:上面第二行的代码效率高些,原因在于删除多个文件时 -exec会启动多个进程来处理,而xargs会启动一个rm进程来处理。

免责声明:文章转载自《centos 删除指定文件之外的其他文件》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇3星|丹尼尔·平克《驱动力》:内在驱动力更有利于个人与企业的业绩。书有点旧了,案例太少提高Vector容器的删除效率下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

docker容器互访三种方式

我们都知道docker容器之间是互相隔离的,不能互相访问,但如果有些依赖关系的服务要怎么办呢。下面介绍三种方法解决容器互访问题。 方式一、虚拟ip访问  安装docker时,docker会默认创建一个内部的桥接网络docker0,每创建一个容器分配一个虚拟网卡,容器之间可以根据ip互相访问。 [root@33fcf82ab4dd /]# [root@C...

Centos 6下使用cmake编译安装MariaDB

写在前面 最近在学习Maria DB,为了方便查阅,又为了将所学的知识重新的梳理,特作此随笔一篇,希望过后阅读时能有所感,也希望对大家能够有所帮助。 安装前的准备 大家都知道,在Linux上安装软件一共有三种方式:1、rpm包安装 。2、二进制程序包安装。3、源码编译安装。对于前2种方式安装起来会便捷不少,但是定制化程度低,当我们需要进行软件diy时,那么...

Centos7.4 更换国内yum源

1、进入yum源配置文件夹。(配置之前先看看有没有安装wget命令呢,没的话可以先用当前的yum源安装一下再说。yum -y install wget) 2、转到配置文件目录cd /etc/yum.repos.d 3、备份一下之前的配置文件。mv ./CentOS-Base.repo ./CentOS-Base.repo.bak 4、下载网易163源。wg...

CentOS 5安装openssh

CentOS 5安装openssh - heipark's note - ITeye技术网站 CentOS 5安装openssh openssh 安装 卸载现有的openssh rpm -qa | grep openssh #列出要删除的rpm包 rpm -e x.rpm # 卸载 安装 官方网站:www.openssh.com wget ht...

在 CentOS 上部署 Nginx 环境

这里的案例主要通过虚拟机( vmware workstation (14) )的方式安装 Center OS 到本地环境 资源下载:  vmware workstation   / CentOS      本次介绍的 CentOS 版本属于精简版 ,建议你可以也下载个精简版 环境准备完成,我们开始进行 Nginx 环境的部署。首先我们在 VM 上安装完...

Linux下对LVM逻辑卷分区大小调整 [针对xfs和ext4文件系统]

当我们在安装系统的时候,由于没有合理分配分区空间,在后续维护过程中,发现有些分区空间不够使用,而有的分区空间却有很多剩余空间。如果这些分区在装系统的时候使用了lvm(前提是这些分区要是lvm逻辑卷分区),那么就可以轻松进行扩容或缩容!不同文件系统类型所对应的创建、检查、调整命令不同,下面就针对xfs和ext2/3/4文件系统的lvm分区空间的扩容和缩容的...