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

[文本处理] [已解决]批处理如何提取文件部分内容为文件名?

本帖最后由 511182890 于 2015-4-17 15:11 编辑

提取文件部分内容为文件名并创建该文件,且把文件移动到该文件
例:e盘下文件
E:\ZX1011-TB1875-147主料(0.5)双向.DXF
E:\ZX1011-GB1201-147主料(0.5)双向.DXF
需要的结果:
E:\TB1875\ZX1011-TB1875-147主料(0.5)双向DXF
E:\GB1201\ZX1011-GB1201-147主料(0.5)双向.DXF
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

本帖最后由 511182890 于 2015-4-16 13:20 编辑

回复 31# pcl_test


    大神再帮一个忙
ABD101-D1-P0KD.DSN
AD101-D1-P0D.DSN
AD101-D1-PKA1101.DSN
ACD101-D1-PKA3333无刀眼.DSN
处理为
P0KD\ABD101-D1-P0KD.DSN
P0D\AD101-D1-P0D.DSN
PKA1101\AD101-D1-PKA1101.DSN
PKA3333\ACD101-D1-PKA3333无刀眼.DSN

TOP

回复 31# pcl_test


       问题2:
AD101-D1-PKD1818-140背料(2米62)倒顺.dxf
AD101-D1-PKD1822横排-140副料(1米57)双向.dxf
AD101-D1-PKD-140背料(2米62)倒顺.dxf
AD123-D1-P0LD-140背料(2米62)倒顺.dxf
AD145-D1-PKD三位-140背料(2米62)倒顺.dxf
AD167-D1-P0LD横向-140背料(2米62)倒顺.dxf
FT505-G1201三位-AA-142副背料(0米75)双向.dxf
FT505-G1956-AA-142副背料(0米75)双向.dxf
怎么做个命令移动到
PKD1818\AD101-D1-PKD1818-140背料(2米62)倒顺.dxf
PDK1822\AD101-D1-PKD1822横排-140副料(1米57)双向.dxf
PDK\AD101-D1-PKD-140背料(2米62)倒顺.dxf
P0LD\AD101-D1-P0LD-140背料(2米62)倒顺.dxf
PKD\AD145-D1-PKD三位-140背料(2米62)倒顺.dxf
P0LD\AD167-D1-P0LD横向-140背料(2米62)倒顺.dxf
G1201\FT505-G1201三位-AA-142副背料(0米75)双向.dxf
G1956\FT505-G1956-AA-142副背料(0米75)双向.dxf

TOP

回复 31# pcl_test


    问题2:
AD101-D1-PKD1818-140背料(2米62)倒顺.dxf
AD101-D1-PKD1822横排-140副料(1米57)双向.dxf
AD101-D1-PKD-140背料(2米62)倒顺.dxf
AD101-D1-P0LD-140背料(2米62)倒顺.dxf
FT505-G1201三位-AA-142副背料(0米75)双向.dxf
FT505-G1956-AA-142副背料(0米75)双向.dxf
怎么做个命令移动到
PKD1818\AD101-D1-PKD1818-140背料(2米62)倒顺.dxf
PDK1822\AD101-D1-PKD1822横排-140副料(1米57)双向.dxf
PDK\AD101-D1-PKD-140背料(2米62)倒顺.dxf
P0LD\AD101-D1-P0LD-140背料(2米62)倒顺.dxf
G1201\FT505-G1201三位-AA-142副背料(0米75)双向.dxf
G1956\FT505-G1956-AA-142副背料(0米75)双向.dxf





之前那命令没有-AA
现在多加了-AA

TOP

本帖最后由 pcl_test 于 2015-4-14 12:12 编辑

问题1、2
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=1-3* delims=-" %%a in ('dir /a-d /b *.dxf') do (
  4. if "%%d" == "" (
  5. set "n=%%b"
  6. md "!n:~,6!\" 2>nul
  7. move "%%a-%%b-%%c" "!n:~,6!\"
  8. ) else (
  9. set "n=%%c"
  10. md "!n:~,7!\" 2>nul
  11. move "%%a-%%b-%%c-%%d" "!n:~,7!\"
  12. )
  13. )
复制代码
问题3 论坛自行搜索 定时
1

评分人数

TOP

回复 19# pcl_test

问题1:
    @echo off
setlocal enabledelayedexpansion
for /f "tokens=1,2* delims=-" %%i in ('dir /a-d /b *.dxf') do (
set "n=%%j"
md "!n:~,6!\" 2>nul
move "%%i-%%j-%%k" "!n:~,6!\"
)
pause
这个代码直接运行关掉好了,不需要按任意键退出,帮忙更改一下。

问题2:
AD101-D1-PKD1818-140背料(2米62)倒顺.dxf
AD101-D1-PKD1822横排-140副料(1米57)双向.dxf
FT505-D3-PLD1809-142副背料(0米75)双向.dxf
BSJ101-D3-PKD1885横排-140主料(1米21)倒顺.dxf
AD101-D1-PKD-140背料(2米62)倒顺.dxf
AD101-D1-P0LD-140背料(2米62)倒顺.dxf
怎么做个命令移动到
PKD1818\AD101-D1-PKD1818-140背料(2米62)倒顺.dxf
PKD1822\AD101-D1-PKD1822横排-140副料(1米57)双向.dxf
PLD1809\FT505-D3-PLD1809-142副背料(0米75)双向.dxf
PKD1885\BSJ101-D3-PKD1885横排-140主料(1米21)倒顺.dxf
PKD\AD101-D1-PKD-140背料(2米62)倒顺.dxf
P0LD\AD101-D1-P0LD-140背料(2米62)倒顺.dxf
如果3 4位文件夹不能与7位文件夹一起,关系也不是很大。


问题3:
我下面这些文件里的批处理
E:\A\1.BAT
E:\B\2.BAT
E:\C\C\3.BAT
,需要个代码,指定10:00与14:00运行一次



麻烦大神了。

TOP

之前做的程序,按任意健转换这个直接取消好了,运行直接关掉好了。

TOP

AD101-D1-PKD1818-140背料(2米62)倒顺.dxf
AD101-D1-PKD1822横排-140副料(1米57)双向.dxf
FT505-D3-PLD1809-142副背料(0米75)双向.dxf
BSJ101-D3-PKD1885横排-140主料(1米21)倒顺.dxf
AD101-D1-PKD-140背料(2米62)倒顺.dxf
AD101-D1-P0LD-140背料(2米62)倒顺.dxf

好了,全部在这里了,如果PKD与P0LD没法与那有7位的一起实现也没有关系

TOP

AD101-D1-PKD-140背料(2米62)倒顺.dxf
AD101-D1-P0LD-140背料(2米62)倒顺.dxf

TOP

回复 25# pcl_test


AD101-D1-PKD1818-140背料(2米62)倒顺.dxf
AD101-D1-PKD1822横排-140副料(1米57)双向.dxf
FT505-D3-PLD1809-142副背料(0米75)双向.dxf
BSJ101-D3-PKD1885横排-140主料(1米21)倒顺.dxf


差不多就全在这里,麻烦了

TOP

回复 24# 511182890
把你的dxf所有文件名的格式都列出来,如
1-2-3.DXF
1-2-3-4.DXF

TOP

回复 23# pcl_test


    谢谢19楼的已经OK,


新问题:
比如:
E:\ZX1011-D1-GB1201三位-147主料(0.5)双向.DXF
结果:
E:\GB1201\ZX1011-D1-GB1201-147主料(0.5)双向.DXF
这个怎么实现,就是第二个“-”开始取6位做文件名
中间多了“--D1”

TOP

回复 22# 511182890
19楼已改

TOP

回复 21# pcl_test


   我又不知道怎么,哪一行改为dir /a-d /b *.dxf   所以还是要麻烦大神帮我写整个代码


还有:
比如:
E:\ZX1011-D1-GB1201三位-147主料(0.5)双向.DXF
结果:
E:\GB1201\ZX1011-D1-GB1201-147主料(0.5)双向.DXF
这个怎么实现,就是第二个“-”开始取6位做文件名

TOP

本帖最后由 pcl_test 于 2015-4-14 09:12 编辑

回复 20# 511182890
改为 dir /a-d /b *.dxf

TOP

返回列表