从文件名的开头删除一串数字或文本

纳特

在 MacOS Sierra (MacBook Pro) 上,如何批量删除 .pdf 文件名开头的随机数字字符串,以便按字母顺序查看它们?例如,这是这些文件如何在 Finder 中显示的示例,其中的数字会影响字母顺序:

22169203 Gregory Zuckerman 有史以来最伟大的交易摘录.pdf

22681256 样本 PDF 拿钱.pdf

24225401 印度电影工业.pdf

24309156 开办并经营自己的咖啡店和午餐吧.pdf

24375874 古典音乐培训的 5 个步骤 Riyaz.pdf

24538682 100 语言信号.pdf

24861279 100 首最伟大的歌曲.pdf

24975456 预约书预览.pdf

25169832 如何免费创业.pdf

25283738 建立现代公关活动.pdf

26672829 世界上最大的股票市场.pdf

26852793 关于股票初学者秘密实用指南的免费电子书 Nnadi Jane.pdf

27012881 食物的价值和价格 摘自 Carlo Petrini 的 Terra Madre.pdf

27114721 社交媒体营销服务.pdf

27881968 简介3.pdf

28097572电影PDF.pdf

杰拉德

这个小 shell 脚本将使用顶部定义的正则表达式重命名文件,删除名称前面的数字。请注意,此脚本应在与 PDF 相同的目录中运行,否则您将需要更改 for 循环中的目录。

#!/bin/bash
regex="([0-9]*.)(([a-zA-Z0-9]*|.*)*\.pdf)"
for filename in *.pdf; do
    if [[ $filename =~ $regex ]]
    then
    mv "$filename" "${BASH_REMATCH[2]}"
  fi  
done

解释

可以在此处找到所用正则表达式的详细分类它比我在这篇文章中更清楚地解释了事情。

mv命令将第一个参数(在本例中为 PDF 及其原始名称)移动到最后一个参数中指定的目标(在本例中为正则表达式的第二个捕获组)。BASH_REMATCH是一个数组,用于存储正则表达式运算的结果。在这种情况下,我们使用了存储文件名减去前缀数字的第二个索引。本文更详细地解释了 bash 正则表达式。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从文件名开头删除数字

来自分类Dev

删除文件名开头,最大为“ _”

来自分类Dev

对一串文本中的数字进行排序

来自分类Dev

在文本文件的每一行开头写入脚本的文件名

来自分类Dev

分割一串数字

来自分类Dev

如何在每个文件名的开头添加一个随机字母/数字?

来自分类Dev

将文件名的最后一个数字部分复制到开头

来自分类Dev

从文件名的开头删除四个字符的字符串,从文件名的末尾删除十三个字符的字符串

来自分类Dev

将文件名中的数字移到开头

来自分类Dev

从文件名中删除随机文本

来自分类Dev

JS中的正则表达式:查找一串以字符开头的数字

来自分类Dev

一串数字不能以零开头。其他解决方案?

来自分类Dev

如何使用Powershell从文件名开头删除空格

来自分类Dev

如何从文件名开头删除点和空格

来自分类Dev

从文件名的开头删除单个字符

来自分类Dev

删除shell中文件名的开头和结尾

来自分类Dev

从一串数字和文本中提取一个数字

来自分类Dev

使用正则表达式根据文件名移动文件,并删除文件名中子字符串中数字较小的文件

来自分类Dev

分割一串数字和字符

来自分类Dev

读取以逗号分隔的一串数字

来自分类Dev

javascript - 构建一串递增的数字

来自分类Dev

编码一串数字(递归?)

来自分类Dev

删除一串数字的最后一个字母

来自分类Dev

如何在每个文件名中删除一些字符串

来自分类Dev

将sed插入一个衬里以从文件名中删除字符串

来自分类Dev

VBScript从文件名中删除数字

来自分类Dev

从文件名中删除前10位数字

来自分类Dev

如何从文件名中删除数字?

来自分类Dev

从文件名中递归删除文本OSX

Related 相关文章

热门标签

归档