Попытка понять синтаксис powershell, которого я не видел, включая команды sshpass и строчные - PullRequest
0 голосов
/ 21 января 2020

Я должен перепроектировать некоторые компоненты сценария, и у меня возникают проблемы с поиском любой информации об этом стиле вызова команд powershell:

sshpass -p 'password' ssh -T -o StrictHostKeyChecking=no user@$vcenter <<< "powershell deletevm $hostname" 1> /dev/null

Я понимаю, что это строка, которая удаляет виртуальную машину, но мне нигде не удалось найти эту команду «deletevm» в сети, любая документация PowerShell, которую я мог найти, обычно относится к «Remove-VM». Поскольку большинство команд powershell, кажется, не следуют этому стилевому стилю команд, я полагаю, что это должно быть «что-то другое», но я не могу понять, что, я подумал, может быть, PowerCLI для VMware, но это также, похоже, не имеет каких-либо Понятие этой команды. Надеясь, что кто-то может направить меня в правильном направлении.

Ответы [ 2 ]

0 голосов
/ 22 января 2020

Я думаю, что вы пытаетесь удалить виртуальную машину из VMhost, вы можете попробовать этот командлет. вам нужно сначала подключиться к vCenter Server

Connect-VIServer -Server 10.0.0.100 -Protocol https -User admin -Password pass
Remove-VM VMName -DeletePermanently



0 голосов
/ 21 января 2020

Что вы можете сделать, это на целевом сервере, на котором вы выполняете команду PowerShell, открыть сеанс PowerShell и выполнить следующее:

Get-Command deletevm

Это разрешит команду и даст вам общее представление о ней. например, Function или Alias, имя Function/Alias, и из какого модуля он получен (в свойстве Source). Если свойство Source пустое, оно где-то определено в сценарии с точечным источником, хорошее место для проверки - это одно из мест, указанных в переменной $profile (см. Ниже).

Если это Function, вы можете увидеть тело функции со следующим кодом:

( Get-Command deletevm ).Definition

Если это Application, то это внешняя команда, и вы можете увидеть путь под свойством Source.


Чтобы проверить возможные местоположения профиля для текущего сеанса, вы можете увидеть их, выполнив следующее:

$profile | Get-Member -MemberType NoteProperty

Посмотрите на свойство Definition здесь; расположение профиля будет на правой стороне =.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...