我的 Prevalidation 文件夹中有许多扩展名为 .psa 的文件,我想:
- 将它们一一复制到我的工作文件夹中
- 将 .psa 文件重命名为 psaload.csv
- 对文件运行一组命令以将其加载到我的数据库中
- 然后从我的工作文件夹中删除 csv 文件。
这将针对我的源文件夹中的所有 .psa 文件重复。
所以,问题是我如何在尽可能多的 .psa 文件上循环执行命令集。
这是我对 Prevalidation 文件夹中的一个文件进行的一段代码测试-
Copy-Item C:\Downloads\PreValidation\*.psa C:\Downloads\Validation\WIP
Rename-Item 'C:\Downloads\Validation\WIP\abc 1234.psa' 'psaload1.csv'
Get-Content C:\Downloads\Validation\WIP\psaload1.csv | ForEach-Object { $_.replace("\,"," ") } | Set-Content C:\Downloads\Validation\WIP\psaload.csv
Remove-Item C:\Downloads\Validation\WIP\psaload1.csv
<run the psaload.csv to load to my db>
这就是我打算做的——
考虑我的 C:\Downloads\Prevalidation 文件夹中的多个 .psa 文件。
For each C:\Downloads\PreValidation\*.psa
BEGIN LOOP
Copy-Item C:\Downloads\PreValidation\aaaa.psa C:\Downloads\Validation\WIP\aaaa.psa
Rename-Item 'C:\Downloads\Validation\WIP\aaaa.psa' 'psaload1.csv'
Get-Content C:\Downloads\Validation\WIP\psaload1.csv | ForEach-Object { $_.replace("\,"," ") } | Set-Content C:\Downloads\Validation\WIP\psaload.csv
Remove-Item C:\Downloads\Validation\WIP\psaload1.csv
END LOOP
我正在寻找语法来为我的 /prevalidation 文件夹中的每个文件一个一个地运行这些命令集。