sed G
# option: g G Copy/append hold space to pattern space.
G
n'est pas souvent utilisé, mais est agréable à cet effet. sed conserve deux espaces tampons: le «pattern space» et le «hold space». Les lignes traitées par sed circulent généralement à travers l'espace de motif différentes commandes opèrent sur son contenu ( s///
, p
, etc.); l'espace d'attente commence vide et n'est utilisé que par certaines commandes.
La G
commande ajoute une nouvelle ligne et le contenu de l'espace d'attente à l'espace de motif. Le programme sed ci-dessus ne met jamais rien dans l'espace d'attente, donc G
ajoute efficacement juste une nouvelle ligne à chaque ligne qui est traitée.
whatever | sed G
devrait faire l'affaire.-e
car nous n'avons besoin que d'un seul argument de commande.Utilisez awk pour ajouter une nouvelle ligne supplémentaire. Cela vous permet également de filtrer les choses dont vous ne voulez pas.
la source
Utilisez sed et remplacez la ligne entière par elle-même plus un caractère de nouvelle ligne supplémentaire:
la source
C'est ce que tu cherches?
grep SPAM mail.log | while read -r line; do echo; echo $line; done
la source
read -r
pour éviter de traiter les caractères antislash comme spéciaux.Si c'est pour plus que simplement regarder, je préfère les envoyer dans un fichier texte et les ouvrir avec un éditeur de texte afin que vous puissiez définir les lignes pour envelopper ou non et faire des recherches facilement ... et supprimer les lignes indésirables et ainsi de suite sans avoir à taper beaucoup de commandes.
cat file.log > log.txt
etgedit log.txt
ou un éditeur de terminaux comme nanoEdit: ou ce
cp file.log log.txt
qui est bien sûr plus facile et plus rapide ... grâce au commentaire de KeithBla source
cat
et noncp
?cp
serait sûr plus facile et plus rapide! ... lol - Je lisais les autres réponses traitantgrep
etawk
donc je l'ai écrit de lacat
façon mais je corrige cela, merci