Ma question est liée à la sed
solution spécifique donnée dans cette réponse pour cette question de grepping inverse . La sed
/ grep
solution que je n'arrive pas à déchiffrer est la suivante:
sed '1!G;h;$!d' file
Quelqu'un peut-il déchiffrer cette commande?
Je sais par VI (M) que G désigne la dernière ligne du fichier et qu'en sed un bang (!) Suivi d'une adresse fonctionne un peu comme grep -v
ça c'est-à-dire qu'il ne correspondra pas à cette ligne. Mais dans l'ensemble, le script sed en ligne ci-dessus me dépasse.
sed
recette délicate est un moyen extrêmement inefficace (complexité O (n ^ 2/2)) d'inverser les lignes d'un fichier. Ce serait trop lent pour les fichiers avec un grand nombre de lignes. Pour une alternative d'inversion d'ordre de ligne beaucoup plus efficace, voir tac
GNU coreutils.