[Powershell] Textdatei Erweiterung

timo2607

Lieutenant
Registriert
Feb. 2011
Beiträge
733
Hallo Leute,

ich habe mal wieder eine Frage zu Powershell.
Ich habe folgende Funktion geschroeben:

function vSwitch ()
{
$vswitch = Read-Host "Wollen Sie einen oder mehrere neue vSwitche anlegen?(ja/nein)"
while ($vswitch -ne "ja" -and $vswitch -ne "nein")
{
$vswitch = Read-Host "Bitte korrigieren Sie Ihre Eingabe und bestätigen mit "ja" oder "nein""
}
if ($vswitch -eq "ja")
{
$vswitchnumber = Read-Host "Wieviele vSwitche wollen Sie anlegen?"
while (($vswitchnumber -match "\d[0-10]") -ne $false)
{
$vswitchnumber = Read-Host "Sie dürfen maximal 10 neue vSwitche anlegen, bitte überprüfen Sie Ihre Eingabe!"
}
$count = 1
while ($vswitchnumber -gt 0)
{

New-Item $dateiort\Configs\vswitch.txt -Force -ItemType file | Out-Null
write "esxcli network vswitch standard add --vswitch-name=vSwitch$vswitchnumber" | Out-File -Append -FilePath "$dateiort\Configs\vswitch.txt"
#$vswitchnumber = $vswitchnumber - 1
$count = + 1
}
}
return $vswitch
}

Wie ihr seht wird eine Datei erzeugt, mit dem entsprechenden Inhalt. ich möchte nun, dass dieser Inhalt immer erweitert wird. Sprich bei der Auswahl von sagen wir mal 5 Switchen soll es in der Textdatei nachher wie folgt stehen.

esxcli network vswitch standard add --vswitch-name=vSwitch1
esxcli network vswitch standard add --vswitch-name=vSwitch2
esxcli network vswitch standard add --vswitch-name=vSwitch3
esxcli network vswitch standard add --vswitch-name=vSwitch4
esxcli network vswitch standard add --vswitch-name=vSwitch5

Leider wird bei mit nur am Ende immer die letzte Ziffer geändert und nicht 5 x der o.g Code in das File geschrieben.

Was mache ich falsch? Könnt ihr mir hier bitte helfen?

Vielen Dank :)
Timo
 
Ich kenn mich da jetzt nicht wirklich aus.
Aber könnte es sein, dass du mit:

Code:
New-Item $dateiort\Configs\vswitch.txt -Force -ItemType file | Out-Null

jedesmal eine neue Datei erstellst?
Dadurch steht dann natürlich immer nur die letzte Ausgabe in der Datei.
 
Jap du hast recht.

Allerdings fehlt mit aktuell immernoch der richtige Ansatz, die Datei nicht neu zu erstellen sondern den Inhalt zu füllen.
Ergänzung ()

Ok habe es nun hinbekommen! Hab einfach das "Force" rausgenommen und schon hat sich das Thema erledigt :)
 
Alternativ kannst du das auch einfach vor die while - Schleife setzen (die ich durch eine for - Schleife ersetzen würde) und das Erstellen nur einmal mal machen.

Dein write würde ich auch durch ein Add-Content ersetzen.

Gruß,
sal
 
sal099 schrieb:
Alternativ kannst du das auch einfach vor die while - Schleife setzen (die ich durch eine for - Schleife ersetzen würde) und das Erstellen nur einmal mal machen.

Dein write würde ich auch durch ein Add-Content ersetzen.

Gruß,
sal

Danke für dein Tipp, werde ich umsetzen!
 
Zurück
Oben