采用powershell脚本,实现批量创建文件写入内容
对应题目为
最终脚本实现效果为
$folderPath = "C:\file\"
$filePrefix = "file"
# 创建文件
for ($i = 0; $i -lt 20; $i++) {
$filePath = Join-Path -Path $folderPath -ChildPath ($filePrefix + "{0:00}.txt" -f $i)
# 如果文件存在,则删除
if (Test-Path -Path $filePath) {
Remove-Item -Path $filePath -Force
}
# 创建文件并写入内容
$content = $filePrefix + "{0:00}" -f $i
$content | Out-File -FilePath $filePath -Encoding UTF8
}
脚本解析
当运行该 PowerShell 脚本时,它会按照以下步骤执行:
- 定义变量
$folderPath
并将其设置为目标文件夹的路径"C:\file\"
。这是文件将被创建的目标文件夹。 - 定义变量
$filePrefix
并将其设置为文件名的前缀"file"
。这将用于为每个文件生成唯一的文件名。 - 使用
for
循环,从 0 到 19 遍历每个文件的索引。索引$i
从 0 开始,增加到 19。 - 在循环中,首先构建当前文件的完整路径。使用
Join-Path
cmdlet,将文件夹路径$folderPath
和文件名构建为完整路径。文件名由$filePrefix
和索引$i
组成,使用字符串格式化进行补零处理,例如file00.txt
。 - 使用
Test-Path
cmdlet 检查当前路径的文件是否存在。 - 如果文件存在,则使用
Remove-Item
cmdlet 删除该文件。-Path
参数指定要删除的文件的路径,-Force
参数用于强制删除文件而不会提示确认。 - 创建变量
$content
并将其设置为当前文件的内容。内容由文件名前缀$filePrefix
和索引$i
组成,例如file00
。 - 使用
Out-File
cmdlet,将变量$content
的内容写入文件。-FilePath
参数指定要写入内容的文件路径,-Encoding
参数设置文件的编码为 UTF-8。 - 循环继续,处理下一个文件,直到所有 20 个文件都创建完毕。
通过上述步骤,脚本将会创建 20 个文件,并为每个文件赋予相应的文件名和内容。如果文件已经存在,则会先删除旧文件再创建新文件。