Сценарий синтаксического анализа с Powershell через планировщик Automic - PullRequest
0 голосов
/ 03 января 2019

Я делаю проект для Trizetto Elements, а именование файлов называется переменным, поэтому я сделал скрипт синтаксического анализа, чтобы убедиться, что я выбираю нужный файл, когда мы начинаем пакетную загрузку. Прекрасно работает на моем рабочем столе, но как только я подключаю его к планировщику Automic, он начинает жаловаться на невозможность загрузки значений в пустые массивы.

Я попытался загрузить пакетный скрипт и запустить автоматический интерпретатор Powershell и получил похожие результаты

################Load file content into variables##########
$array = GCI -Path "F:\Originpath"
$num = $array.Count - 1   
for ($i=0; $i -le $num; $i++ ){$text[$i]

    $text[$i]= get-content $array[$i]|select -First 10

    "Parsing first ten rows of file" + " " + ($array[$i])

     write-host $text[$i]}
####################Evaluate file contents for match####################
      for ($b=0; $b -le $num; $b++ ){
      if($text[$b]| Select-String -Pattern '.*,H9047,.*,51,'){
           Move-Item -path $array[$b] -destination "F\:destination path\"
                }}

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

c:\>powershell -File F:\Automic\Agents\Windows\Resources\0001\0002378703\0002378703_0001.ps1 
Cannot index into a null array.
At F:\Automic\Agents\Windows\Resources\0001\0002378703\0002378703_0001.ps1:5 char:5
+     $text[$i]= get-content ($array[$i])|select -First 10
+     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
    + FullyQualifiedErrorId : NullArray

1 Ответ

0 голосов
/ 03 января 2019

Вы не инициализировали текстовый массив: $ text [$ i]

Вместо этого попробуйте что-то вроде:

$text = @()
$num = $array.Count - 1   
for ($i=0; $i -le $num; $i++ ){
    $text+= get-content $array[$i]|select -First 10

и т.д.

...