删除重复的文件扩展名

2024-02-15

我有数千个名为 filename.gz.gz.gz.gz.gz.gz.gz.gz.gz.gz.gz 的文件

我正在使用这样的 find 命令find . -name "*.gz*"找到这些文件并使用-exec或者通过管道连接到 xargs 并使用一些神奇的命令来清理这个混乱,这样我最终会得到 filename.gz

有人请帮我想出这个神奇的命令来删除不需要的实例.gz。我曾尝试过尝试sed 's/\.gz//' and sed 's/(\.gz)//'但它们似乎不起作用(或者更诚实地说,我对 sed 不是很熟悉)。顺便说一句,我不必使用 sed,任何有助于解决此问题的解决方案都将受到欢迎:-)


find 和 awk 的一种方法:

find $(pwd) -name '*.gz'|awk '{n=$0;sub(/(\.gz)+$/,".gz",n);print "mv",$0,n}'|sh 

Note:

  • 我假设您的文件名中没有特殊字符(例如空格...)。如果有,您需要在 mv 命令中引用文件名。
  • 我添加了一个$(pwd)获取找到的名称的绝对路径。
  • 你可以删除结尾|sh检查生成的mv ... ....cmd,如果正确的话。
  • 如果一切看起来都不错,请添加|sh执行mv

请参阅此处的示例:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

删除重复的文件扩展名 的相关文章

随机推荐

  • 更改相关产品标题在 WooCommerce 中添加产品名称

    我有这段代码 试图将 相关产品 翻译成 这些产品与产品名称搭配得很好 这是我的代码 add filter gettext change related products title 10 3 function change related
  • 在编译时将 this 指针和类方法的参数传递给本地 lambda 函数

    假设您有一个场景 当您想要创建一个constexprlambda 在编译时计算某些内容的方法中 struct A int a constexpr A int a a a constexpr auto operator const A rhs
  • “if-then-else”(总是)可以被函数调用替换吗?

    这个问题主要是出于对 PL 如何工作的好奇 实际上我是在查看 SML 时想到的 SML 与 Haskell 的不同之处在于前者使用按值调用 但我的问题是关于 Haskell 的 Haskell 据我了解 具有 按需调用 语义 这是否意味着如
  • 快速的射弹并不总是能击中

    因此 对于我的游戏 有一个快速移动的子弹对象 其精灵大小为 5x5 大约 以大约 30 的速度移动 需要撞击厚度仅为 5 像素左右的相对较薄的 Enemy 物体 子弹以一定的固定距离间隔穿过敌人而不会发生碰撞 I think这是因为子弹移动
  • DataMan iPhone 应用程序如何在后台工作

    AppStore 上的 DataMan 应用程序 DataMan Lite 是该应用程序的免费版本 有助于监控您的数据使用情况 http www iphonelife com blog 2686 monitor your data usag
  • matlab如何求解大型、对称和稀疏线性系统

    也就是说 当我这样做时A b对于非常大 对称且稀疏的 A matlab 使用什么算法 如果矩阵是稀疏且对称正定的 但有very窄带 然后使用专门的带解算器 大多数矩阵没有足够窄的带来触发这种情况 通常 它会在样条工具箱中提供一维样条 二维问
  • 评估 MySQL 中的表达式

    我有一个包含 a b expr 列的表 expr 是其他列的表达式 例如表包含 a b expr 2 5 a b 3 4 a b 3 我喜欢简单地运行一个查询并获得流动的结果 a b expr 2 5 7 3 4 15 我在文档中搜索函数
  • SQL在同一字段中搜索多个值

    我正在构建一个简单的search算法 我想打破我的带空格的字符串 并在其上搜索我的数据库 如下所示 search Sony TV with FullHD support search explode search SELECT name F
  • 仅删除 vb.net 中的一个特定事件处理程序

    我正在编写一个小型 2D 引擎 使用 Lua 来控制它 过去一段时间我一直在 Lua 和 VB net 之间设置事件 我意识到 问题是我似乎无法删除那些搞砸了很多事情的事件 因为它们在应该完成的时候被调用 为了解决这个问题 我想添加某种方法
  • Python - Twisted、代理和修改内容

    所以我研究了一些涉及使用 python 和 Twisted 框架编写 HTTP 代理的事情 本质上 像其他一些问题一样 我希望能够修改将发送回浏览器的数据 也就是说 浏览器请求资源 代理将获取它 在资源返回到浏览器之前 我希望能够修改任何
  • Java 异常访问冲突?

    我目前正在编写一个 JNI 项目 在尝试运行 Java 代码时收到以下错误日志 它告诉我有问题的框架是 jvm dll 框架 在尝试隔离问题时 我试图找出我的问题到底在哪里 在 JVM 与我的本机代码中 我已附加了线程日志的一部分 并且可以
  • 从压缩文件中提取选定扩展名的所有文件[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我是 python 新手 我想从压缩文件中提取三个具有不同扩展名的单个文件 我不知道它们的文件名 只知道它们的扩展名 假设存在以下格式
  • 如何在C#服务中使用剪贴板?

    请记住 我使用的是服务而不是 Windows 窗体应用程序 当我尝试使用 System Windows Forms Clipboard GetText 时我的代码 不要进入下一步 意味着 System Windows Forms 控件已被弃
  • 引用另一个别名的别名

    我需要识别一个引用 Cmder 中另一个别名命令的别名命令 例如 假设我定义了firstAlias 如下所示 alias firstAlias cd blah blah 比我创建另一个使用上面别名的别名 例如 alias secondAli
  • SQL SELECT 每月的第一天和最后一天。

    最亲爱的专业人士 我构建了一个查询来获取当月的第一天和最后一天 但该月第一天的时间戳有问题 declare FirstDOM datetime LastDOM datetime set FirstDOM select dateadd dd
  • Sqlite 获取最大 id 不起作用(?)

    我用这个 SELECT WHERE id MAX id FROM history 但我的查询是空的 我也尝试过这个 这个有效 SELECT MAX id AS max id FROM history 但显然我的查询只包含 max id 键
  • 在java中将美元(大十进制)转换为美分(整数)的最佳方法是什么?

    我必须将我的网络应用程序与支付网关集成 我想输入美元总金额 然后将其转换为美分 因为我的支付网关库接受美分金额 类型Integer 我找到Big Decimal在java中是操纵货币的最佳方式 目前我输入的金额为 50 美元 并将其转换为I
  • SQL Server 和 Java 之间的时间戳差异

    我需要将一个简单的过程从 Java 代码复制到 SQL Server 存储过程 它将进入生产中的 SQL Azure 数据库 但我正在针对本地 SQL Express 12 安装对其进行测试 该存储过程的一部分是将一些值连接成一个字符串 这
  • SSIS 和 MySQL - 表名分隔符问题

    我正在尝试使用 SQL Server 2008 SSIS 将行从 Access 数据库插入 MySQL 数据库 TITLE Microsoft SQL Server Management Studio ERROR 42000 MySQL O
  • 删除重复的文件扩展名

    我有数千个名为 filename gz gz gz gz gz gz gz gz gz gz gz 的文件 我正在使用这样的 find 命令find name gz 找到这些文件并使用 exec或者通过管道连接到 xargs 并使用一些神奇