【发布时间】:2017-12-08 08:52:10
【问题描述】:
我有一系列具有此命名约定的文件夹:
DD / MM / YYYY - Name
例如:
01 / 05 / 2015 - test folder
我想转换格式以便于阅读,因为名称比日期更重要。
我希望输出是
Name DD-MM-YYY
for i in *; do mv "$i" ...
那么我如何在终端中,或者通过一个.sh(bash):
将
/(\s\/\s) 替换为-?将 DD-MM-YYYY 移到后面?
删除
-(\s\-\s)?
【问题讨论】:
-
名称中的斜线是斜线(路径分隔符)还是文字(不好,非常不好)?
-
/和 NULL 字符不允许在类 unix 操作系统上的文件名中使用。 -
@ᴳᵁᴵᴰᴼ 这些不是路径分隔符,该人将文件标记为“日期”,前面带有“DD/MM/YYYY”,因此文件夹将命名为“01 / 05 / 2015 - 测试文件夹”不是目录路径。
-
@Drew
/在这个命名01 / 05 / 2015 - test folder中真的是斜线吗?我觉得不是。相反,它会类似于division slashfileformat.info/info/unicode/char/2215/index.htm 否则您的问题可能会产生误导。
标签: linux bash batch-processing