我具有以下文件夹结构:
C:\Database
C:\Database\Tables
C:\Database\Stored Procedures
C:\Database\Views
C:\Database\Functions
每个Tables,Stored Procedures,Views和Functions文件夹中都有以下格式的大量文件:
在表格文件夹下:
dbo.Table1Name.Table.sql
dbo.Table2Name.Table.sql
mon.Table3Name.Table.sql
test.Table4Name.Table.sql
在“存储过程”文件夹下:
dbo.usp_StoredProcedure1Name.StoredProcedure.sql
dbo.usp_StoredProcedure2Name.StoredProcedure.sql
dbo.usp_StoredProcedure3Name.StoredProcedure.sql
mon.usp_StoredProcedure4Name.StoredProcedure.sql
mon.usp_StoredProcedure5Name.StoredProcedure.sql
对于视图和功能也是同样的。
然后,Tables文件夹下的文件将重命名为:
dbo.Table1Name.sql
dbo.Table2Name.sql
mon.Table3Name.sql
test.Table4Name.sql
然后,“存储过程”文件夹下的文件名将为:
dbo.usp_StoredProcedure1Name.sql
dbo.usp_StoredProcedure2Name.sql
dbo.usp_StoredProcedure3Name.sql
mon.usp_StoredProcedure4Name.sql
mon.usp_StoredProcedure5Name.sql
理想情况下,我将在Database文件夹中有一个批处理文件,该文件将重命名从各自文件夹中的文件名中删除Table,StoredProcedure,View和Function的文件。
如果在批处理文件中无法轻松完成此操作,则尝试在PowerShell中查找某些内容。
感谢Alex K编辑我的原始文章(我的第一篇文章),并感谢foxidrive的推荐和KnightWhoSayNi分享您的方式。
启动它,它将display the ren commands
出现在屏幕上。
如果正确,请删除echo
并再次运行以执行重命名。
@echo off
for /f "delims=" %%a in ('dir "C:\Database\*.sql" /b /s /a-d ') do (
for /f "tokens=1,2 delims=." %%b in ("%%~nxa") do echo ren "%%a" "%%b.%%c%%~xa"
)
pause
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句