gpt4 book ai didi

bash - 删除 bash 中的双重扩展名

转载 作者:行者123 更新时间:2023-11-29 08:49:05 25 4
gpt4 key购买 nike

我熟悉重命名,但我很好奇重命名是否仍然适用于删除重复的扩展名??

假设我有几个文件名为:

  • picture2.jpg.jpg
  • picture9.jpg.jpg
  • picture3.jpg.jpg
  • picture6.jpg.jpg

如何删除重复的扩展?

最终结果:

  • 图片2.jpg
  • 图片9.jpg
  • 图片3.jpg
  • 图片6.jpg

最佳答案

假设:

  • 您只想在当前工作目录中执行此操作(非递归)
  • 双重扩展的格式与 .jpg.jpg 完全相同:

然后下面的脚本将起作用:

#!/bin/bash

for file in *.jpg.jpg
do
mv "${file}" "${file%.jpg}"
done

解释:

要使用此脚本:

  • 在该目录中创建一个名为 clean_de.sh 的新文件
  • 通过chmod +x clean_de.sh 将其设置为可执行
  • 然后通过./clean_de.sh运行它>

注意事项:

正如@gniourf_gniourf 所指出的,如果您的mv 支持它,请使用-n 选项。

否则 - 如果您在同一目录中有 a.jpga.jpg.jpg,它将重命名 a.jpg.jpga.jpg 并在此过程中覆盖已经存在的 a.jpg 而不发出警告。

关于bash - 删除 bash 中的双重扩展名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13535364/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com