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


        
这样估计好理解了..“=”前后是被替换和替换后的内容
77七 发表于 2022-12-5 17:10



    就是把 !out1:'=‘! 再赋值给out2的意思吗

TOP

回复 16# kimycai


   对
bat小白,请多指教!谢谢!

TOP

回复 11# kimycai


字符串替换,参考set命令教程第9页
http://bbs.bathome.net/thread-31727-1-1.html

我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

本帖最后由 kimycai 于 2022-12-5 19:50 编辑

回复 18# Batcher


    多谢admin指路!

TOP

回复 14# 77七


是为了兼容文件名中含有^字符的情况。
比如以下代码显示的结果是 "^^_^^",而不是期望的 "^_^"。
  1. @echo off
  2. set str="^_^"
  3. call :sub %str%
  4. pause
  5. exit /b
  6. :sub
  7.     echo %1
复制代码

TOP

回复 20# tmplinshi


   原来^字符在call语句中会多出来一个,谢谢版主!
bat小白,请多指教!谢谢!

TOP

中文的引号不是分左右的吗?
77七 发表于 2022-12-5 11:35



    但是,在遇到文件名中有英文感叹号时,这条命令就会被忽略跳过,该怎么修改呢?

TOP

本帖最后由 tmplinshi 于 2022-12-8 00:46 编辑
  1. @echo off
  2. setlocal disabledelayedexpansion
  3. for %%a in (*.flac) do (
  4.     set "in=%%~na"
  5.     setlocal enabledelayedexpansion
  6.     set "out=!in:'=‘!"
  7.     ffmpeg -y -i "!in!.flac" -acodec pcm_s24le  -ar 48000  "!out!.wav"
  8.     endlocal
  9. )
复制代码
1

评分人数

    • 77七: 又学到了,谢谢版主!技术 + 1

TOP

本帖最后由 77七 于 2022-12-8 03:21 编辑

回复 22# kimycai


   我还是第一次遇到这样的情况,看了版主的回答,在站内搜了下,原来文件名中的感叹号会被当作表示延迟变量的符号,被省略了...

http://www.bathome.net/thread-4872-1-1.html     8楼总结

https://www.cn-dos.net/forum/viewthread.php?tid=30884###

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set "a=Adele - !Hello.flac"
  4. set "b=Adele - !Hello!.flac"
  5. echo !a!
  6. echo !b!
  7. pause
  8. endlocal
  9. @echo off
  10. set "a=Adele - !Hello.flac"
  11. set "b=Adele - !Hello!.flac"
  12. echo %a%
  13. echo %b%
  14. pause
复制代码
bat小白,请多指教!谢谢!

TOP

这也让我想起了,有次我看到一个版主的教学帖子,延迟变量要在for语句里面写开始和结束
bat小白,请多指教!谢谢!

TOP

本帖最后由 kimycai 于 2022-12-8 09:02 编辑
tmplinshi 发表于 2022-12-8 00:45



    转换不了,提示“09 - Asuka Strikes.flac: No such file or directory”,且flac文件没有被转换掉,原本的文件名是“09 - Asuka Strikes!.flac”

TOP

本帖最后由 kimycai 于 2022-12-8 09:02 编辑

回复 25# 77七


    转换不了,提示“09 - Asuka Strikes.flac: No such file or directory”,且flac文件没有被转换掉,原本的文件名是“09 - Asuka Strikes!.flac”,该如何修改呢

TOP

回复 25# 77七


    如果引用时不用感叹号,是不是可以用其他方法来代替感叹号的引用呢,这样问题是不是能解决?

TOP

回复 25# 77七


    是不是不保留感叹号会更好处理,但是感觉替换不掉感叹号

TOP

回复 26# kimycai


    是我贴错代码了,开头没有disable

TOP

返回列表