[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [已解决]批处理如何将多个子文件夹里的文件替换成统一扩展名后的文件名写入到文本里

本帖最后由 pcl_test 于 2016-12-16 19:39 编辑

批处理如何只提取主文件名,不同后缀改成同一个后缀?
各位大侠好:
     我在多个文件夹里,分别保存了不同的图片,格式有jpg,gif的。
1.我现在想提取所有图片的名字,不要扩展名。
2. 把所有jpg,gif图片名字改成 名字.js的格式保存在txt里。比如把 玫瑰.jpg  桃花.gif 分别改成变成 玫瑰.js  桃花.js 保存在一个txt里。

万分感谢!

回复 1# xxm19810711
  1. @echo off
  2. cd /d "H:\"
  3. for /f "delims=" %%a in ('dir /b /s *.jpg *.gif') do >>nane.txt echo %%~na.js
  4. pause
复制代码

TOP

本帖最后由 dyfgkxue 于 2015-3-13 11:30 编辑
  1. @echo off
  2. for /r c:\path %%i in (*.jpg) do echo %%~ni.js>>image.txt
  3. for /r c:\path %%j in (*.gif) do echo %%~nj.js>>image.txt
  4. pause
复制代码
用这个试试!c:\path是你多个文件夹所在的盘符及文件夹

TOP

回复 3# dyfgkxue


    谢谢回复,你这个用了后,显示的完整的路径.jpg.js

TOP

回复 4# xxm19810711
我又完善了一下代码!你再试试~

TOP

dir 命令加上 /a-d 会更加严谨
  1. @echo off
  2. (for /f "delims=" %%i in ('dir /b /s /a-d *.jpg *.gif') do (
  3.     echo %%~ni.js
  4. ))>list.txt
  5. pause
复制代码

TOP

  1. @echo off
  2. (for /r "c:\path" %%i in (*.jpg *.gif) do echo %%~ni.js)>image.txt
  3. pause
复制代码

TOP

回复 2# pcl_test


    谢谢回复,上面的第一句是图片的路径吧,是需要自己改的,对吗?

    能不能问一下,如何只提取主文件名,到一个txt呢?谢谢了!

TOP

回复 7# cobat


    谢谢啊,成功了!

TOP

回复 6# DAIC


    谢谢回复!

TOP

谢谢各位大侠的回复,我把你们命令中的js去掉,是不是就是主文件名了,嘿嘿!再次感谢!

TOP

回复 8# xxm19810711
是的,路径或是总的文件夹,去掉.js就是纯文件名

TOP

返回列表