如何获取任务管理器中显示的正在运行的进程的进程ID

2023-12-02

我正在学习 powershell 并尝试了解如何使用变量和函数。我想打印出所有正在运行的记事本实例的 PID,基本上是任务管理器中“详细信息”选项卡下的 PID 列中显示的内容。我写了以下代码

$cmd = {
  param($abc)
  Write-Host $abc
}

$processes = Get-Process -Name notepad | Select -ExpandProperty ID 
foreach ($process in $processes) 
{ 
    Start-Job -ScriptBlock $cmd -ArgumentList $process
}

我得到以下结果。

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command                  
--     ----            -------------   -----         -----------     --------             -------                  
50     Job50           BackgroundJob   Running       True            localhost            ...                      
52     Job52           BackgroundJob   Running       True            localhost            ...                      

这里有两个问题。
1.我只想要PID,它有很多。
2. 我希望上面输出中的 Id 是 PID,但任务管理器中显示的内容非常不同。

你能告诉我我做错了什么吗?


PID 与 ID

您将获得您期望的 PID$processes正好。这里的问题是您看到的输出Start-Job并混淆了它的JobID 与您的 PID 输出。

您的示例中运行了 2 个 notepad.exe,因此 PowerShell 根据请求运行 2 个作业。身份证号码50 and 52只是分配给作业的 ID。要获得您正在寻找的输出,您首先需要捕获它。

如果在你的脚本的末尾你放了Get-Job | Receive-Job你会看到你所期望的 PID。有关工作和工作产出的更多阅读,您可以找到一篇很棒的文章TechNet

However

你为什么使用Start-Job?这部分是一个更大的脚本吗?你应该能够使用Invoke-Command作为传递脚本块$cmd.

$cmd = {
  param($abc)
  Write-Host $abc
}

$processes = Get-Process -Name notepad | Select -ExpandProperty ID 
foreach ($process in $processes){ 
    Invoke-Command -ScriptBlock $cmd -ArgumentList $process
}

Warning

虽然这在您使用的 PowerShell 5.0 中不是问题Write-Host对于您示例中的输出。如果您需要在另一个函数中使用该输出,您应该考虑调用Write-Output反而。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取任务管理器中显示的正在运行的进程的进程ID 的相关文章

随机推荐

  • 具有重复项的类的多标签编码

    如何对具有重复项的列表列进行 n hot 编码 就像是MultiLabelBinarizer来自 sklearn 它计算重复类的实例数量而不是二值化 输入示例 x pd Series a b a b c c c 预期输出 a b c 0 2
  • 序列化数组时删除 根元素

    这是一个代码示例 public class Person public string FirstName get set public string LastName get set static void Main Person pers
  • 字节数组到 UIImage Objective-C

    我有一个字节数组 unsigned char outputData unsigned char malloc sizeof unsigned char w h 4 outputData y h 4 x 4 0 all alpha value
  • 我可以直接将地址分配给指针吗?如果是这样,该怎么做?

    int main int a 2 address is 0x7ffeefbff58c int b a std cout lt lt address of a lt lt b lt lt std endl return 0 我的 int 变量
  • Firebase身份验证单元测试错误没有Firebase应用程序

    我正在尝试测试我的firebase auth方法 身份验证方法有登录 注销 注册等 这是我想要执行单元测试的方法 我收到错误No Firebase App DEFAULT has been created call Firebase ini
  • 如何创建自定义消息框?

    我正在尝试用我的控件制作一个自定义消息框 public static partial class Msg Form public static void show string content string description 实际上我
  • 如何隐藏不适合网格的项目?

    我有一个水平放置 6 个项目的网格 每个项目的最小宽度为 200 像素 如果没有足够的空间容纳整个项目 则应隐藏该项目 现在 当没有足够的空间容纳整个项目时 它会部分显示 如何隐藏不完全适合网格的项目 而不是部分显示 进一步解释 每个网格项
  • C/C++ - 可执行路径

    我想获取当前可执行文件的文件路径 末尾不包含可执行文件名称 我在用着 char path 1024 uint32 t size sizeof path if NSGetExecutablePath path size 0 printf ex
  • JWPlayer - 自定义列表栏以添加“下载”链接

    我们需要允许用户下载他们当前在 JWPlayer 中观看的任何视频 最合乎逻辑的方法是在播放列表 列表栏中添加 下载 链接 列表栏可以定制到这种程度吗 这是一个快速演示 我更新了它 以便它可以在每个播放列表项目的基础上工作 并且我对图像进行
  • Spring mvc @RequestMapping 在类级别和方法级别 404 状态

    我知道这里有很多帖子都有同样的问题 但它们似乎都没有帮助我 所以这可能是重复的 我使用 Maven 创建一个 spring mvc 应用程序 我只有一个控制器和一种方法 当我仅将请求映射注释放在类级别时 应用程序工作正常 但是当我将其放在类
  • SQL Server 2008 - 多个级联 FK - 我需要触发器吗?

    我之间有 1 关系User and Post 一个用户有多个帖子 Post有一个名为 UserId 的 FK 它映射到上的 UserId 字段User table 我尝试将此 FK 设置为 Cascade UPDATE DELETE 但出现
  • 检查 PHP 是否在您的服务器上启用了 PATH_INFO?

    在 PHP 中 是否有一种跨平台 跨 Web 服务器的方法来确定您正在运行的服务器上是否启用了 PATH INFO 看起来 SERVER PATH INFO 仅在脚本后面有额外的路径段时才会填充 因此例如 如果请求是针对 index php
  • ggplot r 中热图标签中的上标

    早上好 我正在 ggplot 中制作特定表型之间相关性的热图 我想用 R 2 来标记每个图块以进行关联 我有一个相关矩阵 max all 如下所示 phenolist2 pheno1 pheno2 pheno3 pheno4 pheno5
  • 将文件从 Azure 文件加载到 Azure Databricks

    寻找一种使用 Azure 文件 SDK 将文件上传到我的 azure databricks blob 存储的方法 我使用这个函数尝试了很多东西page 但没有任何效果 我不明白为什么 example file service FileSer
  • 如何通过工作线程更新 ObservableCollection?

    我有一个ObservableCollection a a collection 该集合包含 n 个项目 每个项目 A 如下所示 public class A INotifyPropertyChanged public ObservableC
  • 如何接收任意IP、任意端口的UDP数据包?

    我想使用 C 的 UdpClient 来侦听任何传入的 UDP 数据包 我想从任何IP和任何端口接收数据包 我尝试了以下方法 UdpClient udpClient new UdpClient 0 IPEndPoint ep new IPE
  • 这两种样式规则有什么区别? [复制]

    这个问题在这里已经有答案了 可能的重复 CSS 子代选择器与后代选择器 那么 这里有什么区别呢 div a Styles here and div gt a Styles here 我真的不明白 space is the 后代组合器 whi
  • MySQL 拒绝参数

    好吧 我对这个简直要疯了 MySQL 对这段 SQL 很不满 INSERT INTO test table column1 column2 VALUES COURSEID COURSENAME 您的 SQL 语法有错误 检查与您的 MySQ
  • 如何通过react-navigation在react-native上使用react hooks

    这是使用 React navigation 的 App js 其上有两个屏幕 称为 HomeScreen 和 AddScreen import as React from react import NavigationContainer f
  • 如何获取任务管理器中显示的正在运行的进程的进程ID

    我正在学习 powershell 并尝试了解如何使用变量和函数 我想打印出所有正在运行的记事本实例的 PID 基本上是任务管理器中 详细信息 选项卡下的 PID 列中显示的内容 我写了以下代码 cmd param abc Write Hos