Ruby重命名文件

Jac*_*all 3 ruby rename

我有一个脚本可以重命名.csv文件中的文件,这个文件工作正常,但我想更多地编辑它,以便它帮助我更多.

该方案是我有一个CID代码中的一些人有CID编码它们中的一些与它额外的文本,并在多个图像8000倍的图像相同的CID的ID,即17263.jpg 17263a.jpg,17623b.jpg我则需要重命名与产品代码的CID图片在网站上工作,以及在其后添加相关的abc字母,如果有多个图像我在.csv列的左侧有文件CID文件,但我没有一个简单的方法将两个代码匹配在一起,因为有这么多.

我想知道是否有一种脚本ruby的方法来搜索文件名中的相关cid代码并将其重命名为相关的产品编号?

这是我下载脚本的链接,我已经更改了它,因此它适用于新的红宝石

http://roguepenguin.net/PFID2SKU/

如果此产品有多个图像,下面列出的一些文件名只需要5位数代码和ab或c等

15144 a.jpg
15144 inset a.jpg
15144 inset b.jpg
15144 inset c.jpg
15144 inset d.jpg
15144 inset e.jpg
15144 inset f.jpg
15144 inset g.jpg
15144 inset h.jpg
15144 inset i.jpg
15155.jpg
15178.jpg
15233 a.jpg
15233 b.jpg
15233 box.jpg
15270.jpg
15321.jpg
15333 a.jpg
15333.jpg
15414 2010.jpg
15458 - 2632.jpg
Run Code Online (Sandbox Code Playgroud)

对不起本周早些时候的帖子搞得一团糟

希望你能理解.

谢谢您的帮助.

Hun*_*len 11

Ruby文件类有一个rename()方法.因此,您可以搜索要重命名的文件,然后使用该File.rename()方法重命名所有文件.

例:

product_name = "Some String";
id = 0;

filenames = Dir.glob("*.jpg")

filenames.each do |filename|
    File.rename(filename, product_name + id.to_s)
    id += 1
end
Run Code Online (Sandbox Code Playgroud)