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

[文件操作] [已解决]批处理如何输出带引号的文件名?

[复制链接]
发表于 2021-9-28 11:28:33 | 显示全部楼层 |阅读模式
本帖最后由 swanseabrian 于 2021-9-28 20:02 编辑
  1. @echo off
  2. (for /f "delims=" %%a in ('dir /b /s /a-d *.txt') do (echo;"%%a"
  3. ) )>1.csv
  4. pause
复制代码
这样导出的文件名不带引号,
因为文件名有的有空格,所以需要带引号
请问怎样导出的文件名带引号呢
发表于 2021-9-28 11:49:31 | 显示全部楼层
很奇怪,只是echo 的话,用echo;^"%%a^"就可以
但是>1.csv后就没有“”了。
发表于 2021-9-28 11:56:46 | 显示全部楼层
回复 1# swanseabrian


    你用记事本打开那个csv文件就会发现它是有引号的
发表于 2021-9-28 11:57:35 | 显示全部楼层
回复 1# swanseabrian


    请详细说下最终目标吧,可能不需要Excel来处理
发表于 2021-9-28 12:00:39 | 显示全部楼层
回复 1# swanseabrian
  1. @echo off
  2. (for /f "delims=" %%a in ('dir /b /s /a-d *.txt') do echo;"""%%a""")>1.csv
  3. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
swanseabrian + 1 厉害

查看全部评分

 楼主| 发表于 2021-9-28 20:02:03 | 显示全部楼层
回复 4# Batcher


    拼接重命名,所以需要导出来 记事本有也可以
发表于 2021-9-28 21:22:50 | 显示全部楼层
回复 6# swanseabrian


    for + ren 命令绝大部分都能实现,不需要Excel
 楼主| 发表于 2021-10-6 09:17:19 | 显示全部楼层
回复 7# Batcher


    老大,这个啥情况
[文件操作] 存在一个重名文件,或是找不到文件。
重命名出现问题报错误
存在一个重名文件,或是找不到文件。
@echo on
pushd %~dp0
ren "000001平安银行:2013年年度报告2014-03-07.PDF" "2013-000001-平安银行:2013年年度报告.PDF"
ren "000002万科A:2013年年度报告2014-03-07.PDF" "2013-000002-万科A:2013年年度报告.PDF"
ren "000004国农科技:2013年年度报告2014-04-22.PDF" "2013-000004-国农科技:2013年年度报告.PDF"
ren "000005世纪星源:2013年年度报告2014-04-26.PDF" "2013-000005-世纪星源:2013年年度报告.PDF"
ren "000006深振业A:2013年年度报告-更新后2014-04-19.PDF" "2013-000006-深振业A:2013年年度报告.PDF"
ren "000007零七股份:2013年年度报告-更新后2014-06-17.PDF" "2013-000007-零七股份:2013年年度报告.PDF"
ren "000008宝利来:2013年年度报告-更新后2014-06-06.PDF" "2013-000008-宝利来:2013年年度报告.PDF"
ren "000009中国宝安:2013年年度报告2014-04-26.PDF" "2013-000009-中国宝安:2013年年度报告.PDF"
复制代码
这是哪里的问题,谢谢
发表于 2021-10-6 09:58:07 | 显示全部楼层
本帖最后由 zzz19760225 于 2021-10-6 10:03 编辑

ren "000001平安银行:2013年年度报告2014-03-07".PDF "2013-000001-平安银行:2013年年度报告".PDF
我自己用(XP32)
ren "03".bat "0 03".bat
ren "0 03".bat "000001平安银行:2013年年度报告2014-03-07".PDF
ren "000001平安银行:2013年年度报告2014-03-07".PDF "2013-000001-平安银行:2013年年度报告".PDF
试的。自己也试一下
 楼主| 发表于 2021-10-6 10:03:56 | 显示全部楼层
回复 9# zzz19760225


    这样也不行,还是报那个错误
发表于 2021-10-6 10:07:24 | 显示全部楼层
回复 8# swanseabrian
英文冒号是不能出现在文件名中的,换成中文冒号试试。

评分

参与人数 2技术 +2 收起 理由
zzz19760225 + 1 居然真是这个原因!
swanseabrian + 1 强啊

查看全部评分

发表于 2021-10-6 10:11:52 | 显示全部楼层
本帖最后由 zzz19760225 于 2021-10-6 12:32 编辑

你是对的,从开始就是对的。我那个属于读题错误。
你的程序已经完成,原有文件已经全部换了名字,所以继续操作就没有那个文件可用。
因---------
@echo off
ren "000001平安银行:2013年年度报告2014-03-07.PDF" "03.bat"
pause
果----------
系统找不到指定的文件。
请按任意键继续. . .
------------

因---------
@echo off
ren "03.bat" "000001平安银行:2013年年度报告2014-03-07.PDF"
pause
果----------
请按任意键继续. . .
------------

因---------"qixiaobin0715:英文冒号是不能出现在文件名中的"
@echo off
ren "000001平安银行:2013年年度报告2014-03-07.PDF" "0:3.bat"
pause
果----------
命令语法不正确。
请按任意键继续. . .
了----------

居然是这个原因
“英文冒号是不能出现在文件名中的,换成中文冒号试试。”
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-21 00:34 , Processed in 0.034553 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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