$ echo -e "AsometAhingA\nsomethingA\nASomethiAng"
AsometAhingA
somethingA
ASomethiAng
$ echo -e "AsometAhingA\nsomethingA\nASomethiAng" | sed "s/A//"
sometAhingA
something
SomethiAng
$
I know that sed "s/A//" deletes the first match in every line.
But i want to delete only the first match in a txt.
like: sed -i "MAGIC" file.txt
| |||
|
feedback
|
|
Unfortunately, sed -i '0,/A/ s///' file.txt
perl -i -pe 'if (!$changed) {s/A// and $changed++;}' file.txt
echo -e "/A/ s///\nwq" | ed file.txt | |||||
feedback
|
|
As long as it's GNU sed (which it probably is, since it's Fedora), you should be able to do:
| |||
|
feedback
|
|
If you have a version of
It prints each line as is until it finds one with the pattern. Then it deletes the pattern. After that it loops from | |||
|
feedback
|