gpt4 book ai didi

powershell - 如何使用Powershell截获命令输出的指定字符串?

转载 作者:行者123 更新时间:2023-12-02 23:37:39 24 4
gpt4 key购买 nike

我使用ipptool来获取当前打印作业的状态。

C:\Users\Administrator>ipptool http://localhost/ipp/printers get-completed-jobs.test


job-id job-state job-name job-originating-user-name job-media-sheets-completed

------ --------- -------- ------------------------- --------------------------

14 canceled RedHat 1

13 completed RedHat 1

12 completed RedHat 1

11 completed RedHat 1

如何获得指定的工作ID和工作状态?

Powershell使用什么方法截取字符串?

问题1:

获取以下字符串:

14已取消

问题2 :

获取以下字符串:

13完成

12完成

问题3:

如何获得最新的工作ID和工作状态?

最佳答案

可从 ConvertFrom-SourceTable ( PowerShell gallery )下载的cmdlet GitHub: iRon7/ConvertFrom-SourceTable 能够读取以下类型的数据表:

$Jobs = ConvertFrom-SourceTable '

job-id job-state job-name job-originating-user-name job-media-sheets-completed

------ --------- -------- ------------------------- --------------------------

14 canceled RedHat 1

13 completed RedHat 1

12 completed RedHat 1

11 completed RedHat 1
'

在您的情况下,可能类似于:
$Jobs = $(.\ipptool http://localhost/ipp/printers get-completed-jobs.test) | ConvertFrom-SourceTable

您剩下的问题实际上是基本的PowerShell命令的问题。
如本例所示, Jobs对象将使您可以访问例如工作14的状态:
$Jobs | ?{$_."job-id" -eq 14} | Select -Expand "job-state"
canceled

以及“如何获取最新的工作ID和工作状态?”:
(假设最近的工作总是最重要的)
$Jobs | Select  "job-id", "job-state" -First 1

job-id job-state
------ ---------
14 canceled

(有关其他 ConvertFrom-SourceTable示例,请参见: https://stackoverflow.com/search?q=ConvertFrom-SourceTable)

关于powershell - 如何使用Powershell截获命令输出的指定字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51276722/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com