Question

I would like to change a specific line in a text file.

I have tried with this

perl -p -i  -e "s/JAI/ramkrishna/ if $. == 37" test.tex

But it is just deleting JAI but not writing ramkrishna.

Était-ce utile?

La solution

Your command works just fine. I guess you have the line number wrong?

With a test.tex file like this

aa
bb
cc
aa bb cc JAI dd ee ff
bb
cc
aa bb cc JAI dd ee ff
xx
yy
zz

the command

perl -p -i  -e 's/JAI/ramkrishna/ if $. == 7' test.tex

changes the file to

aa
bb
cc
aa bb cc JAI dd ee ff
bb
cc
aa bb cc ramkrishna dd ee ff
xx
yy
zz

Autres conseils

sed '37s/JAI/ramkrishna/' filename
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top