Показать полную графическую версию : Количество экземпляров именованного канала
Некоторое приложение (portal.exe) при запуске создает именованный канал, имя которого имеет вид portal.PID.filetime, где PID идентификатор процесса, а filtetime время запуска, представленное целочисленным значением полей одноименной структуры. Так вот, помимо того, что мне нужно вытащить filetime в виде привычной даты, хотелось бы получить еще и количество экземпляров данного канала. Просто вывести список каналов можно так:
[IO.Directory]::GetFiles('\\.\pipe\')
Найти нужный можно через Select-String. Но в выводе команды нет упоминания о количестве экземпляров.
P.S. Использовать pipelist Руссиновича не хотелось бы.
количество экземпляров данного канала »
все каналы существуют в единственном экземпляре
greg zakharov
24-01-2021, 22:37
все каналы существуют в единственном экземпляреЗдесь, коли упомянут pipelist, скорее превратности перевода. Instances можно перевести и как экземпляры, и как инстанции, и как... - в общем, суть понятна. По факту же это - размер канала в байтах.
В десятке чтобы получить размер можно провернуть такой трюк:
($$ = (cmd /c dir \\.\pipe\\ | sls '(\d+)\s+(portal.*)').Matches.Groups[1,2])[0], [DateTime]::FromFileTime(($$[1] -split '\.')[-1])
Foreigner
24-01-2021, 22:43
вытащить filetime в виде привычной даты »
На примере pwsh:
$a = [IO.Directory]::GetFiles('\\.\pipe\') -match 'pwsh'
# $a = \\.\pipe\PSHost.132559056461144875.248.DefaultAppDomain.pwsh
$filetime = ($a -split '(?<=[^\\])\.(?=[^\\])')[1]
# $filetime = 132559056461144875
[datetime]::FromFileTime($filetime)
# 23 января 2021 г. 23:00:46
greg zakharov
24-01-2021, 22:50
На примере pwsh...
А зачем пихать что-то в переменную?
[DateTime]::FromFileTime((([IO.Directory]::GetFiles('\\.\pipe\') -match 'pwsh') -split '\.')[2])
Foreigner
24-01-2021, 22:53
Может лучше через Get-Process?
(Get-Process portal).StartTime
greg zakharov
24-01-2021, 22:55
Конечно лучше. Проблема лишь в росте количества различных вызовов, а также количестве самих процессов. Хм... а может имелось в виду количество пайпов?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.