Я пытаюсь создать скрипт, который будет выводить данные из системной команды, и я хочу организовать данные в массив.Сборка массива с вывода
Сценарий заключается в обнаружении виртуальных машин, находящихся на локальном сервере ESXi, который у меня есть. Я использую plink.exe для отправки команды на сервер, а затем возвращает список виртуальных машин, который выглядит так.
Vmid Name File Guest OS Version Annotation 128 NS01 [datastore2] NS01/NS01.vmx ubuntu64Guest vmx-07 144 NS02 [datastore2] NS02/NS02.vmx ubuntu64Guest vmx-07 208 MX01 [datastore2] MX01/MX01.vmx ubuntu64Guest vmx-07 224 SQL01 [datastore2] SQL01/SQL01.vmx ubuntu64Guest vmx-07 240 WS01 [datastore2] WS01/WS01.vmx ubuntu64Guest vmx-07
Как бы это сделать и сделать массив из него? Единственными столбцами, которые действительно важны, являются VMID, Name, File
Команда, которую я использую для получения результата, это.
# Parse ESX\ESXi server for virtual machines that reside on it
system ("$plink \-batch \-pw $esx_password $esx_user\@$esx_host vim-cmdvmsvc/getallvms\n");
Любое понимание было бы замечательным.
Я убегал от них, потому что он продолжал кричать на меня. Я говорил, что это был оператор, а @ рассматривался как массив. – ianc1215
Это именно то, что мне нужно! И забавный небольшой побочный эффект [0] - это заголовки различных столбцов, которые я собирался пропустить, так что это победа. – ianc1215