如何使用bat获取以相对路径模式的文件列表

清钟沁桐 2011-06-01 08:47:03
for /r "%SOURCE_FILE%" %%i in (*.c) do (
set FileName=%%i
echo !FileName!
)

测试发现,尽管SOURCE_FILE使用相对路径,得到的.c文件列表仍旧使用绝对路径
想请教想有什么方式变量文件夹SOURCE_FILE下的.c文件,并以相对路径显示呢 ?
...全文
690 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
清钟沁桐 2011-06-01
  • 打赏
  • 举报
回复
set ParentPath=%SOURCE_FILE%
echo %ParentPath%
for /f "delims=" %%a in ('dir /s /b "%ParentPath%\*.c"') do (
set "FullPath=%%a"
setlocal enabledelayedexpansion
echo "!FullPath!"
echo "!ParentPath!"
set RelativePath=!FullPath:%ParentPath%=.!
echo "!RelativePath!"
set RelativePath=!RelativePath:\=/!
echo "!RelativePath!"
echo !RelativePath! >> filelist.f

set FileName=!RelativePath!
echo "!FileName!"
echo %COMPILER_DOING% "!FileName!" -o "!FileName:~0,-1!ho" >>%OUT_PATH%\%PROJECT_NAME%_CompileCmdGen.bat
echo !FileName! >>%OUT_PATH%\%PROJECT_NAME%_cfiles.list
echo !FileName:~0,-1!ho >>%OUT_PATH%\objfiles.list
echo @del /f /s !FileName:~0,-1!ho >>%OUT_PATH%\delOut.bat

endlocal
)

echo 22222222222
pause

echo ---SOURCE_FILE=%SOURCE_FILE%
setlocal enabledelayedexpansion
for /r "%SOURCE_FILE%\\" %%i in (*.c) do (

set FileName0=%%i
@echo "!FileName0!"

set "FileName=!FileName0:\=/!"
@echo "!FileName!"

echo %COMPILER_DOING% "!FileName!" -o "!FileName:~0,-1!ho" >>%OUT_PATH%\%PROJECT_NAME%_CompileCmdGen1.bat
echo !FileName! >>%OUT_PATH%\%PROJECT_NAME%_cfiles1.list
echo !FileName:~0,-1!ho >>%OUT_PATH%\objfiles1.list
echo @del /f /s !FileName:~0,-1!ho >>%OUT_PATH%\delOut1.bat
)

pause

echo xgWait /group=compile_%PROJECT_NAME% >>%OUT_PATH%\%PROJECT_NAME%_CompileCmdGen.bat
setlocal disabledelayedexpansion
清钟沁桐 2011-06-01
  • 打赏
  • 举报
回复
echo off
set ParentPath=E:\wxj
for /f "delims=" %%a in ('dir /s /b "%ParentPath%\*.*"') do (
set "FullPath=%%a"
setlocal enabledelayedexpansion
set RelativePath=!FullPath:%ParentPath%=!
set RelativePath=!RelativePath:\=/! >>filelist.f
echo !RelativePath!
endlocal
)

pause

37,719

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧