Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Powershell Eine bestimmte Zeile in einer datei überschreiben

Frage Entwicklung Batch & Shell

Mitglied: HanzNappel

HanzNappel (Level 1) - Jetzt verbinden

28.07.2010 um 16:11 Uhr, 19020 Aufrufe, 3 Kommentare

Guten Tag, ich habe gerade angefangen mich mit Powershell auseinander zu setzen und stehe nun vor folgendem Problem:

Ich möchte gerne eine bestimmte Zeile in einer Ini Datei überschreiben oder etwas anfügen. Ich weiss nur leider nicht wie ich das hinbekommen soll.
Ich habe zwei möglichkeiten gefunden einmal Set-Content und das -replace von update-list. Nur bekomme ich es leider nicht hin das er mir nur die Zeile
überschreibt. Also es ist eine Ini Datei in der Datenbankinformationen stehen und ich möchte den Benutzernamen für eine bestimmte Verbindung per script setzen.

Da der Eintrag für den Benutzernamen mehrfach eingetragen ist, hast mir replace natürlich alle Einträge überschrieben und mit set-content schreibt er die Datei quasi neu.

Da ich beim Zeilenweisen auslesen der Datei einen Zähler hochzählen lasse, wäre es kein Problem die Zeile per Zeilennummer anzusprechen, nur hab ich leider
keinen Plan wie ich das mit Powershell Bewerkstellige. Hat jemand eine Idee?

Gruss
HanzNappel
Mitglied: LotPings
28.07.2010 um 16:47 Uhr
Hallo Hans,

Google ist dein Freund, gleich der erste Eintrag ist doch viel versprechend:
INI File PowerShell Functions.

Gruß
LotPings
Bitte warten ..
Mitglied: HanzNappel
29.07.2010 um 12:00 Uhr
Hallo LotPings,

Google ist sogar ein guter Freund von mir ^^

Mit den Funktionen hab ich das Problem das:

1) Er alle Absätze (Leerzeilen) rausschmeisst, ist jetzt nicht so schlimm.
2) Das hinterher alles wirr durcheinander in der Ini steht, was ich ziemlich doof finde.

Aber trotzdem Danke.

Gruss
HanzNappel
Bitte warten ..
Mitglied: HanzNappel
03.08.2010 um 11:24 Uhr
Hier die Lösung:

  1. File to change
$file = c:\myFile.txt

  1. Get file content and store it into $content variable
$content = Get-Content -Path $file

  1. Replace the line number 4 by a new text
$content[3] = 'new text'

  1. Set the new content
$content | Set-Content -Path $file


If file was formated has the fllowing :
line 1
line 2
line 3
line 4
line 5

The result will be :
line 1
line 2
line 3
new text
line 5

Hope this helps.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Installation
gelöst Mit Powershell in einer Datei eine Zeile auslesen (6)

Frage von Bommi1961 zum Thema Installation ...

VB for Applications
gelöst Vbscript bestimmte Zeile ungeachtet der Nummerierung löschen (4)

Frage von aletri zum Thema VB for Applications ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...