Ho un semplice file di testo e ho bisogno di uno script PowerShell per sostituire alcune parti del contenuto del file.Sostituire il contenuto di un file di testo con un'espressione regolare in powershell
mio script corrente è il seguente:
$content = Get-Content -path "Input.json"
$content -Replace '"(\d+),(\d{1,})"', '$1.$2' | Out-File "output.json"
E 'possibile scrivere in una riga senza la variabile di contenuti, in questo modo?
Get-Content -path "Input.json" | ??? -Replace '"(\d+),(\d{1,})"', '$1.$2' | Out-File "output.json"
non so come posso usare l'uscita del primo commandlet get-contenuti nel secondo comando senza la variabile $ content? Esiste una variabile PowerShell automatica
È possibile eseguire più sostituzioni di una in una pipeline.
Get-Content -path "Input.json" | ??? -Replace '"(\d+),(\d{1,})"', '$1.$2' | ??? -Replace 'second regex', 'second replacement' | Out-File "output.json"
Grazie! È quello che voglio! –
Anche se funziona solo su una riga alla volta '" \ "n", "b" -replace ('\ n', 'a') 'restituirà 'a', 'b'. '" \ "n", "b" -replace ('\ nb', 'a') 'Restituisce ancora" \ 'n", "b" –
@TheRedPea: puoi farlo con tutte le linee contemporaneamente usando 'Get-Content -Raw' invece. Quindi ottieni una singola stringa indietro. – Joey