Windows + Powershell: как изменить сходство процессоров для всех java.ехе случаи?

на основе этой вопрос в StackOverflow, я могу изменить сходство процессора, если исполняемый файл работает только в 1 экземпляре с помощью этой команды:

PowerShell "$Process = Get-Process java; $Process.ProcessorAffinity=11"

Если 2 или более экземпляров, я не могу изменить, и это выход

C:PowerShell "$Process = Get-Process java; $Process.ProcessorAffinity=11"
The property 'ProcessorAffinity' cannot be found on this object. Verify that the property exists and can be set.
At line:1 char:30
+ $Process = Get-Process java; $Process.ProcessorAffinity=11
+                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
    + FullyQualifiedErrorId : PropertyAssignmentException

кто-нибудь знает, как изменить сходство процессора для всех java.экземпляры exe с помощью Powershell?

28
задан Community
03.12.2022 10:54 Количество просмотров материала 2380
Распечатать страницу

1 ответ

вы должны цикл над каждым объектом, чтобы установить его ProcessorAffinity

| % {} в PowerShell означает ForEach-Object и в основном такой же, как foreach() заявления на других языках

как сказал root, вы можете удалить переменную, чтобы ваш код стал короче.

из окна cmd:

PowerShell "get-process java | % { $_.ProcessorAffinity=11 }"

в пакетный файл (батник ручками % как переменная, так что вам нужно записать ее 2 раза или переключиться на foreach) :

PowerShell "get-process java | %% { $_.ProcessorAffinity=11 }"
PowerShell "get-process java | foreach { $_.ProcessorAffinity=11 }"

непосредственно в PowerShell:

get-process java | % { $_.ProcessorAffinity=11 }
3
отвечен SimonS 2022-12-04 18:42

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх