的StackOverflow。
我收集了一些工作笔记。我将它们保存为markdown文件,并将其格式化为日期和年份 - 例如,今天的标题为06132017.md
我正在工作一年,所以我有很多这样的文件。我希望将命名约定从第一个月/第一年改为第一年,这样我就可以按字母顺序对它们进行排序,并轻松找到我需要的日期。
所以06132017.md将成为20170613.md - 这将使2016年和2017年不再按照aplha顺序混合。我可以在文件夹上运行命令吗?
答案 0 :(得分:1)
如果您有Perl重命名实用程序,则执行起来相当简单:
$ prename 's/^(....)(....)(\.md)$/$2$1$3/' *.md
06132017.md renamed as 20170613.md
点匹配任何字符,括号组和替换侧的$N
插入组中捕获的字符。
或者只是在Bash:
$ for x in ????????.md ; do mv -v "$x" "${x:4:4}${x:0:4}.md" ; done
'06132017.md' -> '20170613.md'
${var:n:m}
从变量m
的位置n
开始,获取长度为var
的子字符串。