最近从设计师那里get了超多的图,结果都是1.png,2.png这样的文件名,自己还需要将这些文件变成可读的文件名,不想一个一个得修改,于是就写了一个简单的脚本,实现批量对多个文件增加前缀的操作,后期修改了一下,分享一下。
代码
#!/usr/bin/env ruby
# encoding: utf-8
srcDir= ARGV[0]
prefix= ARGV[1]
pattern = '*'
pattern = ARGV[2] if ARGV.size == 3
Dir[srcDir + '/' + pattern ].each{|child|
childName = File.basename(child)
destChildName = prefix + childName
destChild = child.gsub(childName, destChildName)
system 'mv %s %s'%[child, destChild]
}
如何使用
使用的方法
1.ruby add_prefix_files.rb dest_folder prefix pattern
2.dest_folder 必选 操作进行的基础目录,并不一定总是直接父目录
3.prefix 必须 前缀名称 建议结尾以_结束
4.pattern 可选,如不填写为dest_folder的直接子文件(含目录),否则应用提供的pattern匹配
使用示例
对当前目录下所有文件增加test_前缀。
~/rubydir/tools/add_prefix_files.rb ./ test_
对当前目录下res/drawable-hdpi/所有的png文件,增加test_前缀
~/rubydir/tools/add_prefix_files.rb ./ test_ "res/drawable-hdpi/*.png"