что-то не так с моим командлетом get-content, и я не понимаю, почему он так себя ведет. Я уверен, что кто-то может мне помочь.
У меня есть два текстовых файла. $файл1 и $файл2. Оба файла имеют содержимое или нет. я читаю их так:
$content = get-content $File1
$content = $content + (Get-Content $File2)
Теперь предположим, что $file1 имеет 3 строки, а $file2 — 4 строки. echo $conent показывает мне 7 строк. Хорошо. Допустим, в $file1 есть 1 строка, а в $file2 — 3 строки. echo $conent показывает мне 4 строки. Тоже хорошо.
Но, когда я делаю
foreach ($i in $content)
становится интересно. В примере 1 цикл foreach выполняется 7 раз. В примере 2 цикл foreach выполняется только один раз. Он сразу помещает все строки обоих файлов в $i.
Неважно, сколько строк в $file2, но если в $File1 есть ноль или одна строка, foreach считает, что это только одна строка.
Изменить: когда я добавляю пустые строки в $file1, все работает гладко.
$content = @(get-content $File1)
ваши выводы? - person Matt   schedule 19.12.2015