坚持学习编程已经快两个月了,从最初连变量定义都磕磕绊绊,到现在能独立完成简单功能,每一步都充满挑战与惊喜。今天,我终于解锁了批处理脚本这个“效率神器”,像是在编程地图上开拓了全新的领域! 代码亲测有效的,大家把路径改成自己的就行了。
批量文件重命名
其实早在整理工作资料时,我就幻想过:要是能一键处理那些杂乱的文件名该多好!
给所有文件加前缀
import console;
import fsys;
var targetDir = `目标文件夹路径`;
var count = 1;
fsys.enum(
targetDir,
"*.*",
function(dir, filename) {
var fileExt = fsys.getExtensionName(filename);
var newimg = '图片' + count + '.' + fileExt;
fsys.rename(dir + filename, dir + newimg);
console.log(newimg)
count++
}
);
console.pause();
截图一运行代码的瞬间,看着文件名齐刷刷加上前缀,就像给每个文件贴上了专属标签。想起上个月为了整理客户发来的上百张图片,手动重命名到手指发酸,要是当时会这招,能省下多少时间!
精准修改.jpg
文件
import console;
import fsys;
var targetDir =`目标文件夹路径`;
var count = 1;
fsys.enum(
targetDir,
"*.*",
function(dir, filename) {
var fileExt = fsys.getExtensionName(filename);
if(fileExt== "jpg"){
var newimg = '新的图片' + count + '.jpg'
fsys.rename(dir + filename, dir + newimg);
console.log(newimg)
}
count++
}
);
console.pause();
截图二特意用混合格式的文件夹测试,代码完美避开.png
和.pdf
,只处理.jpg
文件。
批量文件复制新技能
学过之前的函数基础,今天上手批量复制时顺畅了不少。但真正运行代码的那一刻,还是被它的高效震撼到了。
复制所有文件
import console;
import fsys;
var sourceFolder = `源文件夹`;
var targetFolder = `目标文件夹`;
fsys.enum(
sourceFolder,
"*.*",
function(dir, filename) {
var sourcePath = fsys.joinpath(dir, filename);
var targetPath = fsys.joinpath(targetFolder, filename);
var fs = fsys.copy(sourcePath, targetPath);
if(fs){
console.log("复制成功")
}else {
console.log("复制失败")
}
}
);
console.pause();
截图三看着控制台飞速滚动“复制成功”的提示,突然意识到:原来重复劳动真的可以被代码替代!
只复制.jpg
文件
import fsys;
import console;
var sourceFolder = `源文件夹`;
var targetFolder = `目标文件夹`;
fsys.enum(
sourceFolder,
"*.*",
function(dir, filename) {
var fileExt = fsys.getExtensionName(filename);
if(fileExt== "jpg"){
var sourcePath = fsys.joinpath(dir, filename);
var targetPath = fsys.joinpath(targetFolder, filename);
var fs = fsys.copy(sourcePath, targetPath);
if(fs){
console.log("复制成功")
}else {
console.log("复制失败")
}
}
}
);
console.pause(true);
截图四尝试用这个代码整理摄影素材库时,它精准地把几百张.jpg
图片“搬运”到新文件夹,零失误!
挑战!
把.jpg
文件改名成document_序号.jpg
,再复制到新文件夹。
import console;
import fsys;
var targetDir = `源文件夹`;
var targetFolder = "目标文件夹";
var count = 1;
fsys.enum(
targetDir,
"*.*",
function(dir, filename) {
var fileExt = fsys.getExtensionName(filename);
if(fileExt== "jpg"){
var newimg = "document"+ count +".jpg";
fsys.rename(dir + filename, dir + newimg);
thread.delay(100);
var sourcePath = fsys.joinpath(dir,newimg);
var targetPath = fsys.joinpath(targetFolder, newimg);
var fs = fsys.copy(sourcePath, targetPath);
if(fs){
console.log("复制成功")
}else {
console.log("复制失败")
}
}
count++
}
);
console.pause();
截图五总结
今日解锁批处理脚本技能,通过fsys.enum
实现批量文件重命名与复制,如按规则命名、筛选格式、跨文件夹搬运等操作。从单一功能到综合应用的实践中,深刻体会到编程对重复劳动的效率革新,也在调试中强化了逻辑思维!