Board logo

标题: [文本处理] [已解决]bat如何按照文件内容新建文件夹并写入指定文件中 [打印本页]

作者: inflikt    时间: 2013-10-25 16:20     标题: [已解决]bat如何按照文件内容新建文件夹并写入指定文件中

本帖最后由 inflikt 于 2013-10-28 09:04 编辑

现有若干个txt文件。我想实现以下功能
比如a.txt文件中有
张三,123
李四,234
王五,345
...
希望在abc文件夹下新建文件夹a,并在a文件夹下张三.txt最后一行插入123,在a文件夹下的李四.txt最后一行插入234,依次类推
写了点代码但一直提示无法找到路径
  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "delims=" %%i in (*.txt) do (
  3.     for /f "usebackq tokens=1,2 delims=," %%a in ("%%i") do (
  4.         set zs=%%a & set hy=%%~ni & if not exist ".\abc\!hy!" (md .\abc\!hy!) &echo,%%b
  5. )))>>.\abc\!hy!\%zs%.txt
  6. pause
复制代码
求大大们指点
作者: 1270697389    时间: 2013-10-26 08:06

是以文件的前两个字作为文件的名字吧?
作者: inflikt    时间: 2013-10-26 10:57

用逗号分割的
作者: xxpinqz    时间: 2013-10-26 11:17

有段时间没接触,生疏了。。。
  1. @echo off
  2. (for %%i in (*.txt) do (
  3.     md "abc\%%~ni"
  4.     for /f "usebackq tokens=1,2 delims=," %%a in ("%%i") do (
  5.         >>"abc\%%~ni\%%a.txt" echo,%%b
  6.     )
  7. ))2>nul
复制代码

作者: terse    时间: 2013-10-26 11:34

  1. @echo off
  2. set "ph=d:\abc"
  3. for /f "delims=" %%i in (*.txt) do (
  4.     md "%ph%\%%~ni" 2>nul
  5.     for /f "usebackq tokens=1,2 delims=," %%a in ("%%i") do (
  6.          >>"%ph%\%%~ni\%%~na.txt" echo,%%b
  7.     )
  8. )
  9. pause
复制代码

作者: inflikt    时间: 2013-10-28 09:04

回复 5# terse

感谢,测试可用




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2