1- # 设置输出格式
1+ # set output encoding
22$OutputEncoding = [Text.UTF8Encoding ]::UTF8
33
4- # # 公共参数
5-
6- # 替换前的公司名称
4+ # company name placeholder
75$oldCompanyName = " AbpCompanyName"
8- # 替换后的公司名称
6+ # your company name
97$newCompanyName = " YourCompanyName"
108
11- # 替换前的项目名称
9+ # project name placeholder
1210$oldProjectName = " AbpProjectName"
13- # 替换后的项目名称
11+ # your project name
1412$newProjectName = " YourProjectName"
1513
16- # 文件类型名称
14+ # file type
1715$fileType = " FileInfo"
1816
19- # 目录类型名称
17+ # directory type
2018$dirType = " DirectoryInfo"
2119
22- # 复制一份
23- Write-Host ' 开始复制文件夹 '
20+ # copy
21+ Write-Host ' Start copy folders... '
2422$newRoot = $newCompanyName + " ." + $newProjectName
2523mkdir $newRoot
2624Copy-Item - Recurse .\aspnet- core\ .\$newRoot \
@@ -29,7 +27,7 @@ Copy-Item .gitignore .\$newRoot\
2927Copy-Item LICENSE .\$newRoot \
3028Copy-Item README.md .\$newRoot \
3129
32- # sln所在目录
30+ # folders to deal with
3331$slnFolder = (Get-Item - Path " ./$newRoot /aspnet-core/" - Verbose).FullName
3432$vueFolder = (Get-Item - Path " ./$newRoot /vue/" - Verbose).FullName
3533
@@ -41,24 +39,24 @@ function Rename {
4139 $NewCompanyName ,
4240 $NewProjectName
4341 )
44- # 需要修改文件内容的文件后缀名
42+ # file extensions to deal with
4543 $include = @ (" *.cs" , " *.cshtml" , " *.asax" , " *.ps1" , " *.ts" , " *.csproj" , " *.sln" , " *.xaml" , " *.json" , " *.js" , " *.xml" , " *.config" , " Dockerfile" )
4644
4745 $elapsed = [System.Diagnostics.Stopwatch ]::StartNew()
4846
49- Write-Host " [$TargetFolder ]开始重命名文件夹 "
50- # 重命名文件夹
47+ Write-Host " [$TargetFolder ]Start rename folder... "
48+ # rename folder
5149 Ls $TargetFolder - Recurse | Where { $_.GetType ().Name -eq $dirType -and ($_.Name.Contains ($PlaceHolderCompanyName ) -or $_.Name.Contains ($PlaceHolderProjectName )) } | ForEach-Object {
5250 Write-Host ' directory ' $_.FullName
5351 $newDirectoryName = $_.Name.Replace ($PlaceHolderCompanyName , $NewCompanyName ).Replace($PlaceHolderProjectName , $NewProjectName )
5452 Rename-Item $_.FullName $newDirectoryName
5553 }
56- Write-Host " [$TargetFolder ]结束重命名文件夹 "
54+ Write-Host " [$TargetFolder ]End rename folder. "
5755 Write-Host ' -------------------------------------------------------------'
5856
5957
60- # 替换文件中的内容和文件名
61- Write-Host " [$TargetFolder ]开始替换文件中的内容和文件名 "
58+ # replace file content and rename file name
59+ Write-Host " [$TargetFolder ]Start replace file content and rename file name... "
6260 Ls $TargetFolder - Include $include - Recurse | Where { $_.GetType ().Name -eq $fileType } | ForEach-Object {
6361 $fileText = Get-Content $_ - Raw - Encoding UTF8
6462 if ($fileText.Length -gt 0 -and ($fileText.contains ($PlaceHolderCompanyName ) -or $fileText.contains ($PlaceHolderProjectName ))){
@@ -71,11 +69,11 @@ function Rename {
7169 Write-Host ' file(change name) ' $_.FullName
7270 }
7371 }
74- Write-Host " [$TargetFolder ]结束替换文件中的内容和文件名 "
72+ Write-Host " [$TargetFolder ]End replace file content and rename file name. "
7573 Write-Host ' -------------------------------------------------------------'
7674
7775 $elapsed.stop ()
78- write-host " [$TargetFolder ]共花费时间 : $ ( $elapsed.Elapsed.ToString ()) "
76+ write-host " [$TargetFolder ]Total Time Cost : $ ( $elapsed.Elapsed.ToString ()) "
7977}
8078
8179Rename - TargetFolder $slnFolder - PlaceHolderCompanyName $oldCompanyName - PlaceHolderProjectName $oldProjectName - NewCompanyName $newCompanyName - NewProjectName $newProjectName
0 commit comments