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

[文本处理] [已解决]删除空格的批处理代码中%%~nxi和%%~fi的含义

  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "delims=" %%i in ('dir /s/b *.*') do (
  3.     set "foo=%%~nxi"
  4.     set foo=!foo: =!
  5.     set foo=!foo: =!
  6.     ren "%%~fi" "!foo!"
  7. )
  8. exit
复制代码

%%~nxi 扩展到名称含后缀
%%~fi 扩展到完整路径
用 echo显示这些来观察区别

TOP

同功能powershell
  1. powershell "(dir -Recurse *).ForEach({$_.MoveTo(($_.Name -replace ' ',''))})"
复制代码
#&cls&@powershell "Invoke-Expression ([Io.File]::ReadAllText('%~0',[Text.Encoding]::UTF8))" &pause&exit

TOP

感谢大神!

TOP

回复 1# 载体


推荐阅读:批处理for命令教程
http://bbs.bathome.net/thread-31727-1-1.html

批处理for命令从入门到精通以及配套练习题
http://bbs.bathome.net/thread-2189-1-1.html
http://bbs.bathome.net/thread-2336-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

返回列表