1
- # 设置输出格式
1
+ # set output encoding
2
2
$OutputEncoding = [Text.UTF8Encoding ]::UTF8
3
3
4
- # # 公共参数
5
-
6
- # 替换前的公司名称
4
+ # company name placeholder
7
5
$oldCompanyName = " AbpCompanyName"
8
- # 替换后的公司名称
6
+ # your company name
9
7
$newCompanyName = " YourCompanyName"
10
8
11
- # 替换前的项目名称
9
+ # project name placeholder
12
10
$oldProjectName = " AbpProjectName"
13
- # 替换后的项目名称
11
+ # your project name
14
12
$newProjectName = " YourProjectName"
15
13
16
- # 文件类型名称
14
+ # file type
17
15
$fileType = " FileInfo"
18
16
19
- # 目录类型名称
17
+ # directory type
20
18
$dirType = " DirectoryInfo"
21
19
22
- # 复制一份
23
- Write-Host ' 开始复制文件夹 '
20
+ # copy
21
+ Write-Host ' Start copy folders... '
24
22
$newRoot = $newCompanyName + " ." + $newProjectName
25
23
mkdir $newRoot
26
24
Copy-Item - Recurse .\aspnet- core\ .\$newRoot \
@@ -29,7 +27,7 @@ Copy-Item .gitignore .\$newRoot\
29
27
Copy-Item LICENSE .\$newRoot \
30
28
Copy-Item README.md .\$newRoot \
31
29
32
- # sln所在目录
30
+ # folders to deal with
33
31
$slnFolder = (Get-Item - Path " ./$newRoot /aspnet-core/" - Verbose).FullName
34
32
$vueFolder = (Get-Item - Path " ./$newRoot /vue/" - Verbose).FullName
35
33
@@ -41,24 +39,24 @@ function Rename {
41
39
$NewCompanyName ,
42
40
$NewProjectName
43
41
)
44
- # 需要修改文件内容的文件后缀名
42
+ # file extensions to deal with
45
43
$include = @ (" *.cs" , " *.cshtml" , " *.asax" , " *.ps1" , " *.ts" , " *.csproj" , " *.sln" , " *.xaml" , " *.json" , " *.js" , " *.xml" , " *.config" , " Dockerfile" )
46
44
47
45
$elapsed = [System.Diagnostics.Stopwatch ]::StartNew()
48
46
49
- Write-Host " [$TargetFolder ]开始重命名文件夹 "
50
- # 重命名文件夹
47
+ Write-Host " [$TargetFolder ]Start rename folder... "
48
+ # rename folder
51
49
Ls $TargetFolder - Recurse | Where { $_.GetType ().Name -eq $dirType -and ($_.Name.Contains ($PlaceHolderCompanyName ) -or $_.Name.Contains ($PlaceHolderProjectName )) } | ForEach-Object {
52
50
Write-Host ' directory ' $_.FullName
53
51
$newDirectoryName = $_.Name.Replace ($PlaceHolderCompanyName , $NewCompanyName ).Replace($PlaceHolderProjectName , $NewProjectName )
54
52
Rename-Item $_.FullName $newDirectoryName
55
53
}
56
- Write-Host " [$TargetFolder ]结束重命名文件夹 "
54
+ Write-Host " [$TargetFolder ]End rename folder. "
57
55
Write-Host ' -------------------------------------------------------------'
58
56
59
57
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... "
62
60
Ls $TargetFolder - Include $include - Recurse | Where { $_.GetType ().Name -eq $fileType } | ForEach-Object {
63
61
$fileText = Get-Content $_ - Raw - Encoding UTF8
64
62
if ($fileText.Length -gt 0 -and ($fileText.contains ($PlaceHolderCompanyName ) -or $fileText.contains ($PlaceHolderProjectName ))){
@@ -71,11 +69,11 @@ function Rename {
71
69
Write-Host ' file(change name) ' $_.FullName
72
70
}
73
71
}
74
- Write-Host " [$TargetFolder ]结束替换文件中的内容和文件名 "
72
+ Write-Host " [$TargetFolder ]End replace file content and rename file name. "
75
73
Write-Host ' -------------------------------------------------------------'
76
74
77
75
$elapsed.stop ()
78
- write-host " [$TargetFolder ]共花费时间 : $ ( $elapsed.Elapsed.ToString ()) "
76
+ write-host " [$TargetFolder ]Total Time Cost : $ ( $elapsed.Elapsed.ToString ()) "
79
77
}
80
78
81
79
Rename - TargetFolder $slnFolder - PlaceHolderCompanyName $oldCompanyName - PlaceHolderProjectName $oldProjectName - NewCompanyName $newCompanyName - NewProjectName $newProjectName
0 commit comments