Text processing/Max licenses in use: Difference between revisions
Content added Content deleted
m (changed a link "here" to a larger font.) |
No edit summary |
||
Line 1,802: | Line 1,802: | ||
<pre>$ ./licenses mlijobs.txt |
<pre>$ ./licenses mlijobs.txt |
||
The biggest number of licenses is 99 at 2008/10/03_08:39:34 and 2008/10/03_08:40:40 !</pre> |
The biggest number of licenses is 99 at 2008/10/03_08:39:34 and 2008/10/03_08:40:40 !</pre> |
||
=={{header|PowerShell}}== |
|||
<lang PowerShell> |
|||
[int]$count = 0 |
|||
[int]$maxCount = 0 |
|||
[datetime[]]$times = @() |
|||
$jobs = Get-Content -Path ".\mlijobs.txt" | ForEach-Object { |
|||
[string[]]$fields = $_.Split(" ",[StringSplitOptions]::RemoveEmptyEntries) |
|||
[datetime]$datetime = Get-Date $fields[3].Replace("_"," ") |
|||
[PSCustomObject]@{ |
|||
State = $fields[1] |
|||
Date = $datetime |
|||
Job = $fields[6] |
|||
} |
|||
} |
|||
foreach ($job in $jobs) |
|||
{ |
|||
switch ($job.State) |
|||
{ |
|||
"IN" |
|||
{ |
|||
$count-- |
|||
} |
|||
"OUT" |
|||
{ |
|||
$count++ |
|||
if ($count -gt $maxCount) |
|||
{ |
|||
$maxCount = $count |
|||
$times = @() |
|||
$times+= $job.Date |
|||
} |
|||
elseif ($count -eq $maxCount) |
|||
{ |
|||
$times+= $job.Date |
|||
} |
|||
} |
|||
} |
|||
} |
|||
[PSCustomObject]@{ |
|||
LicensesOut = $maxCount |
|||
StartTime = $times[0] |
|||
EndTime = $times[1] |
|||
} |
|||
</lang> |
|||
{{Out}} |
|||
<pre> |
|||
LicensesOut StartTime EndTime |
|||
----------- --------- ------- |
|||
99 10/3/2008 8:39:34 AM 10/3/2008 8:40:40 AM |
|||
</pre> |
|||
=={{header|PureBasic}}== |
=={{header|PureBasic}}== |