създайте папка и файл в Powershell

Искам да напиша скрипт, който създава директория, която не съществува, и да създам файл в тази папка. Скриптът също трябва да може да присвоява стойност на файла. Следното е моят код, но той не присвоява стойността на файла. В този случай се опитвам да вмъкна масива във файла.

$myarray=@()

for($x=0;$x -lt 20; $x++) {

$myarray += $x

}

New-Item -Path C:\temp -Force -Name myarray.log -ItemType File -Value $myarray 

когато отворя файла, myarray.log всичко, което виждам, е „System.Object[]“, но не и масива. Нуждаете се от помощ тук.


person Yini    schedule 28.03.2014    source източник


Отговори (2)


Той пише 'System.Object[]', защото това е, което извежда $myarray.ToString(). Едно решение би било:

New-Item -Path C:\temp -Force -Name myarray.log -ItemType File -Value $($myarray -join ' ') 

Това ще запише всички елементи на масива във файла, разделени с интервали.

Още решения тук: Как да конвертирам масивен обект в низ в PowerShell ?

person marosoaie    schedule 28.03.2014

marosoaie отговори на въпроса ви, но можете също да замените:

$myarray=@()

for($x=0;$x -lt 20; $x++) {

    $myarray += $x

}

с

$myarray = 1..20

за създаване на масив от числа от 1 до 20. Кратък пример:

PS C:\> 1..5
1
2
3
4
5
person TessellatingHeckler    schedule 28.03.2014
comment
Благодаря, но все пак се изисква да го получа от цикъл, нещо като задание, благодаря - person Yini; 30.03.2014