Mit Powershell eine Zeile einer XML Batch Datei bearbeiten
Hallo zusammen,
ich bin nicht grade der beste im Umgang mit Powershell oder mit XML Dateien, deswegen wende ich mich heute an euch.
Im Folgenden Beispiel versuche ich unter <FolderPairs> <Pair> <Left> den Pfad zu ändern. Mein Ziel ist es, das Powershell den Nutzer abfragt (oder selber erkennen kann) welcher Pfad dort stehen soll (also welcher Benutzer angemeldet ist) und dies dann nach \Users setzt. Abschließend soll das ganze wieder als Batch abgespeichert werden.
Der XML-Code:
Ich hoffe das mir einer helfen kann und bedanke mich im voraus.
Liebe Grüße
ich bin nicht grade der beste im Umgang mit Powershell oder mit XML Dateien, deswegen wende ich mich heute an euch.
Im Folgenden Beispiel versuche ich unter <FolderPairs> <Pair> <Left> den Pfad zu ändern. Mein Ziel ist es, das Powershell den Nutzer abfragt (oder selber erkennen kann) welcher Pfad dort stehen soll (also welcher Benutzer angemeldet ist) und dies dann nach \Users setzt. Abschließend soll das ganze wieder als Batch abgespeichert werden.
Der XML-Code:
<?xml version="1.0" encoding="utf-8"?>
<FreeFileSync XmlType="BATCH" XmlFormat="15">
<Compare>
<Variant>TimeAndSize</Variant>
<Symlinks>Exclude</Symlinks>
<IgnoreTimeShift/>
</Compare>
<Synchronize>
<Variant>Mirror</Variant>
<DetectMovedFiles>false</DetectMovedFiles>
<DeletionPolicy>RecycleBin</DeletionPolicy>
<VersioningFolder Style="Replace"/>
</Synchronize>
<Filter>
<Include>
<Item>*</Item>
</Include>
<Exclude>
<Item>\System Volume Information\</Item>
<Item>\$Recycle.Bin\</Item>
<Item>\RECYCLE?\</Item>
<Item>*\desktop.ini</Item>
<Item>*\thumbs.db</Item>
</Exclude>
<TimeSpan Type="None">0</TimeSpan>
<SizeMin Unit="None">0</SizeMin>
<SizeMax Unit="None">0</SizeMax>
</Filter>
<FolderPairs>
<Pair>
<Left>C:\Users\Testbenutzer\Pictures\Saved Pictures</Left> <-Hier soll nach \Users der individuelle Pfad stehen und nicht "Testbenutzer "
<Right>Z:\FreeFileSyncBackup</Right>
</Pair>
</FolderPairs>
<Errors Ignore="false" Retry="0" Delay="5"/>
<PostSyncCommand Condition="Completion"/>
<LogFolder/>
<EmailNotification Condition="Always"/>
<Batch>
<ProgressDialog Minimized="false" AutoClose="false"/>
<ErrorDialog>Show</ErrorDialog>
<PostSyncAction>None</PostSyncAction>
</Batch>
</FreeFileSync>
Ich hoffe das mir einer helfen kann und bedanke mich im voraus.
Liebe Grüße
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Kommentar vom Moderator tomolpi am 23.04.2020 um 15:28:05 Uhr
Code-Tags für XML hinzugefügt
Content-ID: 566946
Url: https://administrator.de/forum/mit-powershell-eine-zeile-einer-xml-batch-datei-bearbeiten-566946.html
Ausgedruckt am: 23.04.2025 um 06:04 Uhr
3 Kommentare
Neuester Kommentar
Moin,
Als Batch? Oder als XML? Ansonsten ist das ganz simpel. Guckst Du hier:
https://www.langlitz-it.de/?p=1297
hth
Erik
Zitat von @Frxhb1:
Im Folgenden Beispiel versuche ich unter <FolderPairs> <Pair> <Left> den Pfad zu ändern. Mein Ziel ist es, das Powershell den Nutzer abfragt (oder selber erkennen kann) welcher Pfad dort stehen soll (also welcher Benutzer angemeldet ist) und dies dann nach \Users setzt. Abschließend soll das ganze wieder als Batch abgespeichert werden.
Im Folgenden Beispiel versuche ich unter <FolderPairs> <Pair> <Left> den Pfad zu ändern. Mein Ziel ist es, das Powershell den Nutzer abfragt (oder selber erkennen kann) welcher Pfad dort stehen soll (also welcher Benutzer angemeldet ist) und dies dann nach \Users setzt. Abschließend soll das ganze wieder als Batch abgespeichert werden.
Als Batch? Oder als XML? Ansonsten ist das ganz simpel. Guckst Du hier:
https://www.langlitz-it.de/?p=1297
hth
Erik

XML Batchdatei, Powershell?? Wat soll dat sein 😆😆, entweder oder, für eins solltest du dich dann doch schon entscheiden...
Lieber gleich clean als pures Powershell...
Lieber gleich clean als pures Powershell...
$file = 'd:\datei.xml'
$xml = [xml](gc $file)
$xml.FreeFileSync.FolderPairs.Pair.Left = "$env:USERPROFILE\Pictures\Saved Pictures"
$xml.Save($file)