使用 OSX 终端在该文件夹内的第一个文件后重命名文件夹

托马斯·莫泽

我有一堆文件夹,它们都具有相同的名称或迭代编号……例如 Material 01、Material 02、Material 181 等。里面有很多名称正确的视频文件。我需要将文件夹重命名为与该文件夹中的第一个文件同名(按名称排序)

平均

Mac 终端通常使用 bash,所以类似这样的事情应该可以解决问题:在您拥有文件夹的目录中:将其放入名为 rename.sh 的文件中,然后键入bash rename.sh并按 Enter:

#! /bin/bash

for dir in Material*; do

  while read -rd ''; do
    newname=$(basename -- "${REPLY%.*}")
    break
  done < <(find "$dir" -maxdepth 1 -not -name '.*' -type f -print0 | sort -z)

  echo "dir:${dir} new:${newname}"
  mv -n "$dir" "$newname"
done

假如说:

  • 每个第一个视频都有不同的文件名
  • 首先,您的意思是按字母顺序排列。

注意:文件夹将根据文件名命名,没有扩展名。但是,如果您还想为文件夹的新名称添加扩展名,则可以将 while 循环中的第一行替换为newname=$(basename -- "$REPLY")

此解决方案还使用 忽略隐藏文件-not -name '.*',并且能够处理包括换行符在内的文件名。但在我看来,在文件名中使用换行符通常是一个坏主意。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用一个命令重命名多个文件夹中的多个文件

使用OSX终端命令计算文件夹中的文件数

使用python复制文件夹和子文件夹,但只复制子文件夹中的第一个文件

如何使用Powershell将文件从一个文件夹复制并重命名到另一个文件夹?

如何使用键盘在OSX中打开文件夹?

Bash:使用文件夹名称重命名文件(每个文件夹 1 个)

如何使用 AppleScript 在 OSX 照片中的命名文件夹中创建/制作相册?

根据 OSX 终端中的已知文件夹名称列表将文件夹复制到另一个文件夹

在文件夹中创建一个文件,然后使用 SSH 写入该文件

根据另一个文件中的字符串重命名文件夹中的文件 - 使用 Python

使用 VBA 重命名文件夹

如何在OSX中批量重命名文件夹?

使用文件夹名称重命名文件并将它们移动到一个大文件夹

如何使用批处理脚本重命名在该文件夹中具有一定数量文件的多个文件夹?

使用命令提示符打开文件夹中的第一个文件

我正在使用 Pathlib 打开一个文件夹,以便我可以在该文件夹内创建一个 txt 文件,但我收到了一个错误

如何使用 Powershell 文件观察器检测文件夹内的文件夹更改(特别是重命名)

使用zmv重命名子文件夹中的文件

使用Matlab重命名文件夹中的文件

使用.txt文件重命名文件夹

使用txt文件重命名文件夹

使用终端将多个文件夹压缩为一个zip文件

如何使用终端将一个文件移动到文件夹?

遍历文件夹并使用文件夹名称顺序重命名每个文件夹中的所有文件

使用父文件夹的名称重命名子文件夹中的文件

使用子文件夹标签重命名子文件夹中的文件

在OSX中使用Sed重命名文件

在Google驱动器上创建一个文件夹(如果不存在),然后使用Python脚本将文件上传到该文件夹

使用VB允许用户选择一个文件夹,该文件夹将所有文件加载到电子表格中