Suchen und Ersetzen von Text (FART): Ersetzte 0 Vorkommen


1

Das großartige FART- Dienstprogramm scheint die Norm zu sein, wenn versucht wird, Text in der Windows-Befehlszeile zu ersetzen.

Ich kann es jedoch nicht zum Laufen bringen, wie in den Beispielen gezeigt. Meine Testdatei test.txt :

Images Here Images
ImagesWhateverImages

Ich versuche es jetzt:

fart -r -i -p "test.txt" "Images"

und bekomme:

Images Here Images
ImagesWhateverImages
Found 4 occurence(s) in 1 file(s).

Großartig! Aber wenn Sie jetzt versuchen, Images durch Foo zu ersetzen, funktioniert das nicht:

fart -r -i -p "test.txt" "Images" "foo"
--> Replaced 0 occurence(s) in 1 file(s).

Jeder scheint nur ein fart -r -i- p <filename> <string_to_replace> <replacement>Kommando zu machen und damit zu arbeiten. Was mache ich falsch?


5
Furz und Riss? Das ist meine neue Lieblingssoftware!
Iglvzx

1
Sie können auch einfach tun -rip, um klarer zu machen, was Sie sagen
Dennis G

perl -p -i -e 's/Image/foo/' test.txtlässt dich besser riechen.
RedGrittyBrick

Und erfordert, dass ich 32 MB Perl installiere. Obwohl ich Kuchen mag.
Dennis G

1
Also Powershell:$filename = $args[0] $search = $args[1] $replace = $args[2] (Get-Content $filename) | Foreach-Object {$_ -replace "$search", "$replace"} | Set-Content $filename
Dennis G

Antworten:


3

Ist das eine Trickfrage? In der Verwendungshilfe von FART wird deutlich angegeben , dass es -psich um "Vorschau" handelt. Wenn Sie diese entfernen, werden die Änderungen tatsächlich vorgenommen.

(Wird auch -rnicht benötigt, wenn Sie nur mit einer einzelnen Datei arbeiten.)


Mein erstes gutes Lachen heute:]
Nixda

Das war eine einfache Lösung. Kein Witz hier, ich habe PowerShell trotzdem benutzt. Danke für den Fund :-)
Dennis G
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.