网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
06月10日漏签0天
bat吧 关注:16,751贴子:231,830
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 11回复贴,共1页
<<返回bat吧
>0< 加载中...

求助,如下,不胜感激

  • 只看楼主
  • 收藏

  • 回复
  • 小仓鼠吖~
  • Rem
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
第一个问题,如何用BAT批量删除文件名前n个字符,比如说图中我要把每个文件的前25个字符都删掉,该怎么写BAT代码呢
第二个问题,图中前四个文件只需删24个字符,后面的需要删25个字符,如何同时做到


  • 小仓鼠吖~
  • Rem
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
第二个问题相当于识别功能,比如说如果第4个字符是“_”,那就删除前24个字符,否则删25个,请问代码该怎么写


2025-06-10 02:40:35
广告
  • 小仓鼠吖~
  • Rem
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
图中的文件名都是.CSV


  • baby阳阳122
  • Echo
    2
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
# 获取所有文件对象
$files = Get-ChildItem -Path . -Filter *.csv
# 遍历文件对象
foreach($file in $files){
# 获取旧的文件名
$oldName = $file.BaseName
# 声明一个变量存放老的文件名
$newName = ""
# 判断文件名第四个字符是不是下划线
if($oldName[3] -eq "_"){
# 如果是下划线则删除文件名前24个字符
$newName = $oldName.Substring(24) + $file.Extension
}else{
# 如果不是下划线则删除文件名前25个字符
$newName = $oldName.Substring(25) + $file.Extension
}
# 重命名文件
Rename-Item -Path $file.FullName -NewName $newName
}


  • 四季sw
  • Start
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
改了策略,只保留第2个_之后的文件名
@ echo off
for /f "tokens=1,2,* delims=_" %%a in ('dir /b *.csv') do ren %%a_%%b_%%c %%c


  • 还没学会易语言
  • If
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
@echo off
setlocal enabledelayedexpansion
set "prefix_length=25"
for %%f in (*.png) do (
set "filename=%%f"
set "newname=!filename:~%prefix_length%!"
ren "%%f" "!newname!"
)
试试这个,可能兼容性不太好


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 11回复贴,共1页
<<返回bat吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示