arrays - 在foreach语句powershell中使用数组
问题描述
我有一个包含文件夹的数组,我需要为每个文件夹在应用程序上运行一个命令,所以我正在使用 foreach 命令。但是在参数列表中,我需要分别指定每个文件夹的路径,所以假设我有 4 个文件夹(Folder1、Folder2、Folder3、Folder4),并且在 foreach 脚本块中我需要使用包含多个应用程序命令的 -Argumentlist 启动进程和文件夹的名称。分别对每个文件夹执行相同的操作。
我遇到的问题是为每个文件夹运行 ArgumentList,其中每个文件夹具有来自同一数组的不同文件夹。我一直在努力澄清,但如果这还不够理解,请告诉我。
我一直试图弄清楚,这些几乎是我的笔记:
$folders=Get-ChildItem C:\AppFolder
$argum="-appcommand /path/$folders"
foreach ($folder in $folders) {
Start-Process -FilePath 'C:\Program Files\App1\run.exe' -ArgumentList $argum
}
我不能为每个文件夹写单独的行,因为这些在每台计算机上都会有所不同,我需要一个完全自动化的解决方案。
我知道这很令人困惑,所以我将尝试逐步重写我想要实现的目标。我需要自动化这个:
对于存储在 $folders=Folder1,Folder2,Folder3,Folder4 中的每个文件夹
对于 Folder1: Start-Process -FilePath 'C:\Program Files\App1\run.exe' -ArgumentList '-appcommand /path/Folder1' (注意:-appcommand /path/ 是一个常量)
对于 Folder2: Start-Process -FilePath 'C:\Program Files\App1\run.exe' -ArgumentList '-appcommand /path/Folder2'
对于 Folder3: Start-Process -FilePath 'C:\Program Files\App1\run.exe' -ArgumentList '-appcommand /path/Folder3'
对于文件夹 4: Start-Process -FilePath 'C:\Program Files\App1\run.exe' -ArgumentList '-appcommand /path/Folder4'
编辑:我已经设法使用新的组合变量来解决这个问题,然后使用 Invoke-Expression 运行它们。简而言之,以下是我所做的。
$items=Get-ChildItem C:\AppFolder -Directory | select -ExpandProperty Name
$argum="Start-Process -FilePath 'C:\Program Files\App1\run.exe' -ArgumentList '-appcommand ""/Path/"
foreach ($item in $items) {
$Tasks=$argum+$item+"""'"
Invoke-Expression $Tasks
}
我知道这是一种胶带解决方案,但最终它起作用了。感谢好心人的投入!
解决方案
编辑:我已经设法使用新的组合变量来解决这个问题,然后使用 Invoke-Expression 运行它们。简而言之,以下是我所做的。
$items=Get-ChildItem C:\AppFolder -Directory | select -ExpandProperty Name
$argum="Start-Process -FilePath 'C:\Program Files\App1\run.exe' -ArgumentList '-appcommand ""/Path/"
foreach ($item in $items) {
$Tasks=$argum+$item+"""'"
Invoke-Expression $Tasks
}
我知道这是一种胶带解决方案,但最终它起作用了。感谢好心人的投入!
推荐阅读
- vue.js - 如何在 Vue.js 中获取标题
- amazon-web-services - 是否可以从现有的 x86-64 映像构建 arm64 映像?
- extjs - 从其他域加载 Ext.grid.Panel
- node.js - 在多个 React 应用程序之间共享相同的 node_modules 文件夹
- swift - 属性声明了一个不透明的返回类型,但没有用于推断基础类型的初始化表达式
- database - 存储应用程序事件历史或状态的最佳方式是什么
- javascript - 是否有扩展运算符更改值的功能?
- python - 使用 Airflow 将数据从大查询传输到 Amazon S3
- reactjs - React Native:useState 未更新
- css - 如何在反应上创建粘性导航栏(在 div 内)