powershell - 我们可以在并行容器中运行两个进程任务吗,比如第一个线程中的 350 个文件并在第二个线程中休息
问题描述
我正在使用powershell脚本来压缩文件。在这里我需要将文件并行压缩到容器中。350个文件在一个容器中并保留在另一个容器中。我该如何拆分。
在执行过程任务中,我只是执行 ps 脚本。在这里,我只是过滤了 .txt 文件,并在 foreach 循环中完成了压缩过程。
在这里,我如何将 350 个文件压缩到一个容器中并保留在另一个容器中?
$files = Get-ChildItem $srcdir -Filter *.txt | ? {$_.LastWriteTime -ge (Get-Date).Date}
foreach($file in $files) {
}
解决方案
@Sid 提到的运行空间将提供最佳性能选项。
Powershell 作业可能也足以满足您希望完成的任务:
$files = Get-ChildItem $srcdir -Filter *.txt | ? {$_.LastWriteTime -ge (Get-Date).Date}
$Job1 = Start-Job -ScriptBlock {
foreach($file in $files[0..349]) {
}
}
$Job2 = Start-Job -ScriptBlock {
foreach($file in $files[350..$files.length]) {
}
}
Wait-Job $Job1, $Job2
Receive-Job $Job1, $Job2
- Wait-Job = 等待两个作业完成。
- Receive-Job = 收集来自 Jobs 的任何输出。
推荐阅读
- python-3.x - 如何删除我的 Urwid 小部件之间的空格?
- postgresql - 如何在 Express 中使用 Sequelize for Postgresql 实现 IS-A 关系?
- tcl - 在调用者上下文中打印包含列表变量的表达式
- c# - 上传到 Azure 块 Blob 时如何选择最佳块大小
- spring-data-jpa - Spring JPA 查询以识别孤儿
- matlab - Matlab - 如何将一组单元格数组转换为允许索引的数组?
- sql - 如何将逗号分隔的数组转换为配置单元中的行
- tensorflow - 如何使用 tf.saved_model 加载模型并调用预测函数 [TENSORFLOW 2.0 API]
- typescript - 只读值上的类型保护
- python-3.x - 如何获取python3数据类实例的索引?