找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 13112|回复: 5

[文件操作] 批处理如何把txt文本放入已有不在一个目录下的相同名称的文件内?

[复制链接]
发表于 2024-8-11 14:47:30 | 显示全部楼层 |阅读模式
批处理如何把txt文本放入已有相同名称的文件内?

例如:txt文本在 E:\文件   ,需要放在文件夹E:\文件\images下的有着相同名称的文件夹内
发表于 2024-8-11 17:20:27 | 显示全部楼层
本帖最后由 aloha20200628 于 2024-8-11 17:28 编辑

回复 1# cxq00

以下代码存为 test.bat 置于 ‘e:\文件’ 目录中,将任选的目标文件直接托给 test.bat 运行即可...

  1. @echo off &if "%~1" neq "" for /f "delims=" %%a in ('dir /b/ad "images\%~n1*" 2^>nul') do if /i "%~n1"=="%%a" move /y "%~1" "images\%%a"
  2. pause&exit/b
复制代码
发表于 2024-8-11 20:47:23 | 显示全部楼层
  1. @echo off
  2. rem 保存为ansi
  3. for %%a in ("e:\文件\*.txt") do (
  4.         if exist "e:\文件\images\%%~na" (
  5.                 copy "%%a" "e:\文件\images\%%~na"
  6.         )
  7. )
  8. pause
复制代码
 楼主| 发表于 2024-8-11 21:34:53 | 显示全部楼层
回复 3# 77七


    可以了,谢谢您的帮助
 楼主| 发表于 2024-8-11 21:35:22 | 显示全部楼层
回复 2# aloha20200628


   这个运行了没有效果,不知道啥原因
发表于 2024-8-11 23:06:15 | 显示全部楼层
本帖最后由 aloha20200628 于 2024-8-11 23:11 编辑

回复 5# cxq00

2楼代码是仅对某个拖入的文件操作
看来楼主的 ‘猜谜帖’ 是3楼押对了...原来是要把当前目录中所有与 'dir /b/ad \images\*' 同名的*.txt文件放到对应子目录中 如是再给一个版本如下

  1. @echo off &setlocal enabledelayedexpansion &for /d %%d in (images\*) do set "%%~nxd=1"
  2. for /f "delims=" %%F in ( 'dir /b/a-d "*.txt" ') do if "!%%~nF!"=="1" move /y "%%F" "images\%%~nF"
  3. endlocal&pause&exit/b
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 22:07 , Processed in 0.018436 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表