首页 > 其他分享 >每周一脚本:批量对多个文件增加前缀

每周一脚本:批量对多个文件增加前缀

时间:2022-11-10 23:41:48浏览次数:79  
标签:前缀 批量 每周 pattern add ARGV prefix png


最近从设计师那里get了超多的图,结果都是1.png,2.png这样的文件名,自己还需要将这些文件变成可读的文件名,不想一个一个得修改,于是就写了一个简单的脚本,实现批量对多个文件增加前缀的操作,后期修改了一下,分享一下。

代码


lineos:false add_prefix_files.rb ​​link​


#!/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]
}

如何使用

使用的方法

  • ruby add_prefix_files.rb dest_folder prefix pattern
  • dest_folder 必选 操作进行的基础目录,并不一定总是直接父目录
  • prefix 必须 前缀名称 建议结尾以_结束
  • pattern 可选,如不填写为dest_folder的直接子文件(含目录),否则应用提供的pattern匹配

使用示例

对当前目录下所有文件增加test_前缀。


lineos:false

~/rubydir/tools/add_prefix_files.rb ./ test_

对当前目录下res/drawable-hdpi/所有的png文件,增加test_前缀


lineos:false

~/rubydir/tools/add_prefix_files.rb ./ test_  "res/drawable-hdpi/*.png"



标签:前缀,批量,每周,pattern,add,ARGV,prefix,png
From: https://blog.51cto.com/u_3987305/5842322

相关文章

  • 查找字符串数组中的最长公共前缀
     import java.util.*;public class Solution {    /**     *      * @param strs string字符串一维数组      * @return string......
  • 变量初始化与数据批量操作
    在tensorflow中通过tf.Variable()添加变量,变量就是在tensorflow程序运行中不断改变的量,也就是“学习”的过程,通过改变变量来降低loss  所有变量在进行图操作前,一定要进......
  • Python批量创建文件和文件夹
    Python批量创建文件和文件夹前言:本来计划利用windows批处理脚本批量创建文件和文件夹(文件和文件名称顺序命名),编写批处理脚本过程中,出现很多问题难以解决,耗费时间过多。既......
  • Python数据分析,批量合并表格
    日常在处理数据时,数据表格常常以固定的格式,这些表格都具有相同的列名,通过对数据表进行整合,可以极大的提高我们的工作效率。本节使用两种方法对于表格批量处理,一种是常规的菜......
  • Python 批量导出mysql数据库表结构(转)
    https://blog.csdn.net/weixin_44309131/article/details/124119037?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~aggregatepage~first_rank_ecpm_v......
  • 基于Python的批量处理execl文件内容
    今天遇到一个棘手的问题,在三个文件夹中将近60个execl表选出所需的特定三列数据,且表名,sheet名,表中的数据类型均不一致,故想到利用Python批量化处理技术手段进行处理。其原理......
  • 性能爆表:利用ThreadPoolTaskExecutor批量插入百万级数据实测!
    来源:azdebug.blog.csdn.net/article/details/103697108前言开发目的:提高百万级数据插入效率。采取方案:利用ThreadPoolTaskExecutor多线程批量插入。采用技术:spring......
  • 国标视频云平台EasyGBS如何批量开启按需直播?
    国标视频云服务EasyGBS支持设备/平台通过国标GB28181协议注册接入,并能实现视频的实时监控直播、录像、检索与回看、语音对讲、云存储、告警、平台级联等功能。平台部署简单......
  • mysql批量制造数据
    DELIMITER$$CREATEPROCEDUREprocess_test3()BEGINDECLAREyouridINT;SETyourid=100000;WHILEyourid<2000000DOINSERTINTOtt(order_no)VALUES(yourid)......
  • n维前缀和
    n维前缀和DP法每一维考虑,从低维向高维转移。#include<bits/stdc++.h>usingnamespacestd;#defineLLlonglong#defineendl'\n'constintMAXN=1e5;constin......