Salut besoin de remplacer une chaîne dans le fichier uniquement dans la nième ligne de fichier
fichier1
hi this is line 1 hi this is line 2 hi this is line 3 hi this is line 4
Je dois remplacer «salut» uniquement à la ligne 2
expert comme ci-dessous
hi this is line 1 Hello this is line 2 hi this is line 3 hi this is line 4
J’ai essayé en créant un fichier temporaire
sed -n 2p file1 > temp1 perl -pi -e 's/hi/Hello/g' temp1 \\I sortinged to replace temp1 with line 2 in file1 sed -i '2d' file1 \\after this I failed to insert temp1 as a 2nd line in file1
Aidez-moi à remplacer une chaîne dans un fichier de la Nième ligne (sans fichier temporaire est préférable ..).
Je vous remercie
Cela pourrait fonctionner pour vous:
sed -i '2s/hi/Hello/' file
La réponse ci-dessus est correcte, mais je suis tenté de mettre la variante AWK juste à titre de référence.
awk 'NR==2{gsub("hi","Hello",$1)}; {print $0}' file > newfile