Как выполнить командную строку с параметрами в Power Shell (Dicom)

Я работаю с файлами Dicom, пытаясь найти способ выполнить команду и передать ей необходимые параметры. Общая идея состоит в том, чтобы зафиксировать вывод в виде строки, которая позже будет вставлена ​​в базу данных.

При таком кодировании вывод сохраняется в переменной $errOutput.

$command = ".\myprogram.exe"
$params = "-v -aet *PARAM* -aec *PARAM* *IP* *Port* $($row.filename)"
[string]$errOutput = $( $output = &$command $params ) 2>&1

Но параметры не работают должным образом.

Сообщение об ошибке:

$dcmtk: dcmsend v3.6.7 дата $ System.Management.Automation.RemoteException dcms конец: ошибка SCU (отправителя) простого хранилища DICOM: неизвестная опция -v -aet ПАРАМЕТРЫ -aec ПАРАМЕТРЫIPПОРТфайл

(Вразумительные данные были заменены на порт, ip, имя файла и т.д.)

Формы c голосовым вводом в React с помощью Speechly
Формы c голосовым вводом в React с помощью Speechly
Пытались ли вы когда-нибудь заполнить веб-форму в области электронной коммерции, которая требует много кликов и выбора? Вас попросят заполнить дату,...
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Будучи разработчиком веб-приложений, легко впасть в заблуждение, считая, что приложение без JavaScript не имеет права на жизнь. Нам становится удобно...
Flatpickr: простой модуль календаря для вашего приложения на React
Flatpickr: простой модуль календаря для вашего приложения на React
Если вы ищете пакет для быстрой интеграции календаря с выбором даты в ваше приложения, то библиотека Flatpickr отлично справится с этой задачей....
В чем разница между Promise и Observable?
В чем разница между Promise и Observable?
Разберитесь в этом вопросе, и вы значительно повысите уровень своей компетенции.
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
Четыре эффективных способа центрирования блочных элементов в CSS
Четыре эффективных способа центрирования блочных элементов в CSS
У каждого из нас бывали случаи, когда нам нужно отцентрировать блочный элемент, но мы не знаем, как это сделать. Даже если мы реализуем какой-то...
0
0
19
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Если вы хотите передать список параметров в Powershell, вам действительно нужно передать список, а не одну строку. Это можно сделать, указав список строк, разделенных запятыми:

$command = "dcmsend"
$params = "-v", "-aet", "SOME_AET", "-aec", "CALLED_AET", "hostname", "104", "test.dcm"
$errOutput = $( $output = &$command $params ) 2>&1

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

Большое спасибо. Это работало таким образом. Я продолжал пытаться передать параметры как один блок. Мне не пришло в голову попробовать это таким образом. Описание ошибки из PS тоже не помогло

Juan Cruz Ojeda 17.05.2022 20:55

Другие вопросы по теме