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


获取当前目录名,然后输出到1.txt文件时,把当前目录替换为空,你得到的1.txt文件里面只保存相对路径就行了.
或者先计算当前目录名的长度,然后%x:~x,y%截取断也行.

TOP

回复 4# yunyan100

用set替换当前路径为空,得到相对路径的方法如下:
  1. @echo off&setlocal ENABLEDELAYEDEXPANSION
  2. cd /d "%~dp0"
  3. echo %cd%
  4. set "currdir=%cd%"
  5. for /f "delims=" %%i in ('dir /b /a-d /s "*"') do (
  6.     call :get_relative_path "%%~i"
  7. )
  8. type 1.txt
  9. pause
  10. goto :EOF
  11. :get_relative_path
  12. set "full_path=%~1"
  13. set rel_path=!full_path:%currdir%=!
  14. >>1.txt (echo "%rel_path%")
复制代码
自己读出1.txt的时候根据情况解除2边引号吧,不加引号的话,&符号echo会悲剧.

TOP

返回列表