В чем заключается вся часть «gps» для скрипта?
Две (gps excel -ErrorAction SilentlyContinue).count
линии в начале и в конце сценария подсчета количества исполняемых файлов Excel, работающих под управлением. gps
- сокращенный псевдоним для get-process
. Вы можете узнать больше, делая help gps
, который возвращает:
ИМЯ
Get-Process
СИНТАКСИС
Возвращает процессы, которые выполняются на локальном компьютере или на удаленном компьютере.
Эти две строки не служат никакой другой цели, кроме как подсчитать количество выполняемых процессов Excel и вывести значение на консоль. Они не влияют на остальную часть скрипта и, по-видимому, являются своего рода проверкой здравого смысла для оригинального автора сценария.
Какая часть этого скрипта перезаписывает мой оригинальный CSV и копирует его в список задач Task Manager? Процессы.
Следующая часть:
$csvpath="C:\path\to\file.csv"
gps | Export-Csv $csvpath -NoTypeInformation
Это получает список всех запущенных процессов и экспорта в качестве файла CSV для $csvpath
. Это будет перезаписывать файл по адресу $csvpath
каждый раз, когда он запускается.
Линия $xl=New-Object -com "Excel.Application"
сообщает PowerShell о запуске экземпляра Excel.Application
. Поскольку Excel является COM-объектом (или, точнее, сервером автоматизации COM, работающим в собственном процессе), коммутатор -com
сообщает PowerShell, что такое его ProgID. Если у вас не было -com
(или указать его полное имя ComObject
), то PowerShell уйдет с охоты на управляемый (.NET) тип для создания экземпляра.
Что это значит, почему 51? ($ XlOut, 51)
линии:
$xlout=$csvpath.Replace('.csv','.xlsx')
заменяет .csv
расширение в $csvpath
с .xlsx
создавая таким образом новое имя файла C:\path\to\file.xlsx
$wb.SaveAs($xlOut,51)
Это говорит Excel, чтобы сохранить ваша книга в файле $xlout
. Параметр 51
обычно будет значением из перечисленного типа. В этом случае это происходит из перечисления XlFileFormat
, в частности XlFileFormat.xlOpenXMLWorkbook
.
Ну, я вижу, что GPS - это псевдоним для командлета Get-Process ... Это начинает заставлять меня думать о том, что переписывает мои CSV-файлы с информацией о процессе от taskman. –