Board logo

标题: [文件操作] [已解决]批处理如何输出带引号的文件名? [打印本页]

作者: swanseabrian    时间: 2021-9-28 11:28     标题: [已解决]批处理如何输出带引号的文件名?

本帖最后由 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
复制代码
这样导出的文件名不带引号,
因为文件名有的有空格,所以需要带引号
请问怎样导出的文件名带引号呢
作者: semiuel    时间: 2021-9-28 11:49

很奇怪,只是echo 的话,用echo;^"%%a^"就可以
但是>1.csv后就没有“”了。
作者: Batcher    时间: 2021-9-28 11:56

回复 1# swanseabrian


    你用记事本打开那个csv文件就会发现它是有引号的
作者: Batcher    时间: 2021-9-28 11:57

回复 1# swanseabrian


    请详细说下最终目标吧,可能不需要Excel来处理
作者: qixiaobin0715    时间: 2021-9-28 12:00

回复 1# swanseabrian
  1. @echo off
  2. (for /f "delims=" %%a in ('dir /b /s /a-d *.txt') do echo;"""%%a""")>1.csv
  3. pause
复制代码

作者: swanseabrian    时间: 2021-9-28 20:02

回复 4# Batcher


    拼接重命名,所以需要导出来 记事本有也可以
作者: Batcher    时间: 2021-9-28 21:22

回复 6# swanseabrian


    for + ren 命令绝大部分都能实现,不需要Excel
作者: swanseabrian    时间: 2021-10-6 09:17

回复 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"
复制代码
这是哪里的问题,谢谢
作者: zzz19760225    时间: 2021-10-6 09:58

本帖最后由 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
试的。自己也试一下
作者: swanseabrian    时间: 2021-10-6 10:03

回复 9# zzz19760225


    这样也不行,还是报那个错误
作者: qixiaobin0715    时间: 2021-10-6 10:07

回复 8# swanseabrian
英文冒号是不能出现在文件名中的,换成中文冒号试试。
作者: zzz19760225    时间: 2021-10-6 10:11

本帖最后由 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
果----------
命令语法不正确。
请按任意键继续. . .
了----------

居然是这个原因
“英文冒号是不能出现在文件名中的,换成中文冒号试试。”




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