大阔
发布于 2023-06-12 / 467 阅读 / 0 评论 / 2 点赞

采用powershell脚本,实现批量创建文件写入内容

采用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 脚本时,它会按照以下步骤执行:

  1. 定义变量 $folderPath 并将其设置为目标文件夹的路径 "C:\file\"。这是文件将被创建的目标文件夹。
  2. 定义变量 $filePrefix 并将其设置为文件名的前缀 "file"。这将用于为每个文件生成唯一的文件名。
  3. 使用 for 循环,从 0 到 19 遍历每个文件的索引。索引 $i 从 0 开始,增加到 19。
  4. 在循环中,首先构建当前文件的完整路径。使用 Join-Path cmdlet,将文件夹路径 $folderPath 和文件名构建为完整路径。文件名由 $filePrefix 和索引 $i 组成,使用字符串格式化进行补零处理,例如 file00.txt
  5. 使用 Test-Path cmdlet 检查当前路径的文件是否存在。
  6. 如果文件存在,则使用 Remove-Item cmdlet 删除该文件。-Path 参数指定要删除的文件的路径,-Force 参数用于强制删除文件而不会提示确认。
  7. 创建变量 $content 并将其设置为当前文件的内容。内容由文件名前缀 $filePrefix 和索引 $i 组成,例如 file00
  8. 使用 Out-File cmdlet,将变量 $content 的内容写入文件。-FilePath 参数指定要写入内容的文件路径,-Encoding 参数设置文件的编码为 UTF-8。
  9. 循环继续,处理下一个文件,直到所有 20 个文件都创建完毕。

通过上述步骤,脚本将会创建 20 个文件,并为每个文件赋予相应的文件名和内容。如果文件已经存在,则会先删除旧文件再创建新文件。


评论