我在我的文件夹中存储了许多图像,其中一些具有像12412421_3843114_12412412
. 有 200-300 个这样的文件,我希望能够分配一种简单a-zA-Z
的序列,即没有数字或下划线。我怎样才能在cygwin中做到这一点?
编辑我希望文件名看起来像任何东西abdllwlaslf
,但它们需要没有下划线。我知道当我不使用下划线时我的选择是有限的,但就我而言,这就是我所需要的。
它不会产生非常漂亮的文件名,但从技术上讲,这会做你想要的......
for i in $( find . -regex ".*/[0-9_]+$" ) ; do mv $i $( basename $i | sed 'y/0123456789_/ABCDEFGHIJK/' ) ; done
一个名为的文件12412421_3843114_12412412
将成为BCEBCECBKDIEDBBEKBCEBCEBC
使用上述内容。如果您愿意,您可以调整sed
替换中的字符。
请注意,上述命令必须从相关文件夹中运行。
在真正的 Linux 系统上,使用该命令可以更有效地完成此操作,但我在 Cygwin 中rename
使用并没有取得很好的成功。rename
假设只是将 0 替换为 a,将 1 替换为 b 等,您可以使用tr
:
$ echo 42344234_1341264574_2134234 | tr 0123456789_ abcdefghij
ecdeecdejbdebcgefhejcbdecde
而不是echo
,只需通过管道传输您的文件名并使用结果进行重命名。