iis服务器助手广告广告
返回顶部
首页 > 资讯 > 服务器 >Shell中删除某些文件外所有文件的3个方法
  • 207
分享到

Shell中删除某些文件外所有文件的3个方法

文件方法Shell 2022-06-04 21:06:36 207人浏览 独家记忆
摘要

我的一位同事曾经问过我这样一个问题:在 linux 下,如何 删除目录中除某些文件之外的所有文件?当时,我告诉他可 以通过模式匹配的方法解决。但其实,除此之外,还有其他 的方法,正所谓“条条大路通罗马”。让

我的一位同事曾经问过我这样一个问题:在 linux 下,如何 删除目录中除某些文件之外的所有文件?当时,我告诉他可 以通过模式匹配的方法解决。但其实,除此之外,还有其他 的方法,正所谓“条条大路通罗马”。让我们来逐一看看。

假设要删除 ~/Downloads 目录中除 *.iso 和 *.zip 外的 所有文件,那么在 bash 中可以按以下方法处理:

方法1:模式匹配法

shopt -s extglob # 确认开启 extglob 选项

cd ~/Downloads

rm -v !(*.iso|*.zip)

!(pattern list) 的作用是匹配除 pattern list 之外 的文件。

方法2:设置变量法

在 bash 中,GLOBIGNORE 可用来设置要忽略的模式匹配 文件,多个模式通过 : 分隔。

cd ~/Downloads

export GLOBIGNORE=*.zip:*.iso

rm -v *

unset GLOBIGNORE

方法3:find 搜索法

熟悉 find 的朋友想必知道,find 的威力异常强大,因此 利用它也可解决此问题。

cd ~/Downloads

find . -type f -not ( -name '*.zip' -or -name '*.iso' ) -delete

不过还是要提醒大家,rm 操作是非常危险的,切勿炫技,如果你不放心,那么可以先老老实实的逐个或分批删除,也要比事后找回方便的多。

--结束END--

本文标题: Shell中删除某些文件外所有文件的3个方法

本文链接: https://www.lsjlt.com/news/18253.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Shell中删除某些文件外所有文件的3个方法
    我的一位同事曾经问过我这样一个问题:在 Linux 下,如何 删除目录中除某些文件之外的所有文件?当时,我告诉他可 以通过模式匹配的方法解决。但其实,除此之外,还有其他 的方法,正所谓“条条大路通罗马”。让...
    99+
    2022-06-04
    文件 方法 Shell
  • 有哪些Shell中删除某些文件外所有文件的方法
    本篇内容介绍了“有哪些Shell中删除某些文件外所有文件的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!假设要删除 ~/Download...
    99+
    2023-06-09
  • Android递归方式删除某文件夹下的所有文件(.mp3文件等等)
    1.由于需要删除文件,因此需要如下权限: <uses-permission android:name="android.permission.WRITE_EXTERNAL...
    99+
    2022-06-06
    mp mp3 Android
  • java中删除文件/文件夹的3种方法
    1、通过io删除文件 public static void deleteFileByIO(String filePath) { File file = new File(...
    99+
    2023-08-31
    java 开发语言
  • linux 删除指定文件夹外的其他所有(文件)文件夹
    文章目录 方法一. 删除指定文件夹外的其他所有文件夹命令:方法二. 删除指定文件夹外的其他所有文件夹命令:三. 其他方法(没有验证)1、方法1,比较麻烦的做法是:2、方法2,需要在当前文件夹中...
    99+
    2023-09-16
    linux 服务器 unix
  • Linux中怎么使用shell删除文件夹下所有文件
    在Linux中,可以使用以下命令来删除文件夹下的所有文件:1. 使用rm命令删除文件夹下的所有文件,但保留文件夹本身:```rm /...
    99+
    2023-08-08
    Linux shell
  • Java中删除文件或文件夹的方法有哪些
    本篇内容介绍了“Java中删除文件或文件夹的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!删除文件或文件夹的四种基础方法下面的四个...
    99+
    2023-07-06
  • shell备份文件、重命名文件、删除指定文件的3个脚本分享
    因为经常会用到shell脚本,所以经常会写一些,但是我从来没有系统的学习过shell脚本,遇到问题,就去看手册,或者google一下,到了一定的程度才发现自己的基础真的好差。下面在系统学习shell时,顺便...
    99+
    2022-06-04
    文件 脚本 重命名
  • Python中有哪些删除文件的方法
    Python中有哪些删除文件的方法,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。使用Python删除文件有多种方法,但是最好的方法如下: os.remove()删...
    99+
    2023-06-15
  • Linux系统删除文件夹下所有文件的方法是什么
    小编今天带大家了解Linux系统删除文件夹下所有文件的方法是什么,文中知识点介绍的非常详细。觉得有帮助的朋友可以跟着小编一起浏览文章的内容,希望能够帮助更多想解决这个问题的朋友找到问题的答案,下面跟着小编一起深入学习“Linux系统删除文件...
    99+
    2023-06-28
  • php删除文件的方法有哪些
    在PHP中,有多种方法可以删除文件,包括:1. unlink()函数:此函数用于删除文件。需要传递文件路径作为参数。```php$f...
    99+
    2023-09-16
    php
  • linux删除所有文件的命令是哪个
    这篇文章主要介绍“linux删除所有文件的命令是哪个”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“linux删除所有文件的命令是哪个”文章能帮助大家解决问题。linux删除所有文件的命令是“rm -...
    99+
    2023-07-02
  • shell中删除文件中重复行的方法
    Linux下文本处理工具很丰富很强大,例如这样一个文件: cat log www.lsjlt.com 192.168.1.1www.lsjlt.com 192.168.1.1www.lsjlt.com 19...
    99+
    2022-06-04
    文件 方法 shell
  • 使用bash shell删除目录中的特定文件的3种方法
    我是一名Linux新用户。现在我需要清理一个下载目录中的文件,其实我就是想从~/Download/文件夹删去除了以下格式的文件外所以其它文件: 1.*.iso - 所有的iso格式的文件。 2.*.zip ...
    99+
    2022-06-04
    种方法 文件 目录中
  • 在windows中删除文件的方法有哪些
    在Windows中删除文件的方法有以下几种:1. 使用资源管理器:打开资源管理器,找到要删除的文件,右键单击文件,选择“删除”或按下...
    99+
    2023-09-11
    windows
  • bat中如何定时删除一个文件夹内的所有子文件夹和文件
    这篇文章将为大家详细讲解有关bat中如何定时删除一个文件夹内的所有子文件夹和文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在win9x的年代,用deltree这个外部命令就很容解决这个问题,不过从wi...
    99+
    2023-06-08
  • nodejs清空/删除指定文件夹下面所有文件或文件夹的方法示例
    同步函数: //使用fs.readdir()方法读取文件夹中的所有文件和文件夹,然后使用递归来删除每个文件和文件夹。 const fs = require('fs'); const ...
    99+
    2023-05-15
    nodejs 清空 删除 文件夹 文件
  • 使用bash shell删除目录中的特定文件的方法有哪些
    本篇内容介绍了“使用bash shell删除目录中的特定文件的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!我是一名Linux新用...
    99+
    2023-06-09
  • linux删除大量文件方法有哪些
    本篇内容主要讲解“linux删除大量文件方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux删除大量文件方法有哪些”吧!首先建立50万个文件代码如下:test  for ...
    99+
    2023-06-09
  • shell循环删除文件的方法是什么
    在Shell中,可以使用循环结构来删除文件。常用的循环结构有for循环和while循环。1. 使用for循环删除文件:```bash...
    99+
    2023-08-14
    shell
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作