Articles of sed

Est-il possible d’échapper à des méta-caractères regex de manière fiable avec sed

Je me demande s’il est possible d’écrire une commande sed 100% fiable pour échapper à tous les méta-caractères de regex dans une chaîne d’entrée afin qu’elle puisse être utilisée dans une commande sed ultérieure. Comme ça: #!/bin/bash # Trying to replace one regex by another in an input file with sed search=”/abc\n\t[az]\+\([^ ]\)\{2,3\}\3″ replace=”/xyz\n\t[0-9]\+\([^ ]\)\{2,3\}\3″ […]

Sortie de shell du playbook Ansible

Je voudrais surveiller rapidement certains hôtes en utilisant des commandes telles que ps, dstat etc. en utilisant ansible-playbook. La commande ansible elle-même fait parfaitement ce que je veux, par exemple, j’utiliserais: ansible -m shell -a “ps -eo pcpu,user,args | sort -r -k1 | head -n5” et il imprime bien toute la sortie std pour chaque […]

Swap deux colonnes – awk, sed, python, perl

J’ai des données dans un gros fichier (280 colonnes de large, 7 millions de lignes de long!) Et je dois échanger les deux premières colonnes. Je pense que je pourrais le faire avec une sorte de awk for loop, pour imprimer $ 2, $ 1, puis une plage à la fin du fichier – mais […]

‘+’ (une ou plusieurs occurrences) ne fonctionne pas avec la commande ‘sed’

J’essaie de raffiner mon code en éliminant les espaces blancs inutiles, en supprimant les lignes vides et en équilibrant les parenthèses avec un espace entre eux, donc: int a = 4; if ((a==4) || (b==5)) a++ ; devrait changer à: int a = 4; if ( (a==4) || (b==5) ) a++ ; Cela fonctionne pour […]

Convertir les fins de ligne

J’ai utilisé d2u pour convertir les fins de ligne. Après avoir installé Puppy Linux, j’ai remarqué qu’il ne venait pas avec d2u , mais dos2unix . Ensuite, j’ai remarqué qu’Ubuntu manque tous les deux par défaut. Quelle est une autre façon de convertir les fins de ligne?

Grep sortie avec plusieurs couleurs?

Existe-t-il une méthode élégante en bash pour exécuter grep sur un fichier texte avec 2 motifs ou plus, et chaque motif correspondant est affiché dans une couleur différente? Donc, une ligne qui correspond à MALE et AUGUST sortirait MALE en bleu et AUGUST en orange? Je suis ouvert à l’utilisation de sed , awk , […]

L’expression Sed n’autorise pas les chaînes groupées facultatives

J’essaie d’utiliser la regex suivante dans un script sed mais cela ne fonctionne pas: sed -n ‘/\(www\.\)\?teste/p’ La regex ci-dessus ne semble pas fonctionner. sed ne semble pas appliquer le ? au groupé www\. . Cela fonctionne si vous utilisez le paramètre -E qui modifie sed pour utiliser le regex étendu, donc la syntaxe devient: […]

Utiliser sed pour supprimer toutes les lignes entre deux motifs correspondants

J’ai un fichier quelque chose comme: # ID 1 blah blah blah blah $ description 1 blah blah # ID 2 blah $ description 2 blah blah blah blah Comment puis-je utiliser une commande sed pour supprimer toutes les lignes entre les lignes # et $ ? Donc le résultat deviendra: # ID 1 $ […]

Imprimer avec sed ou awk une ligne suivant un motif correspondant

J’aimerais imprimer une seule ligne directement après une ligne contenant un motif correspondant. Ma version de sed ne prendra pas la syntaxe suivante (elle bombe sur +1p .), Ce qui semblerait être une solution simple: sed -n ‘/ABC/,+1p’ infile Je suppose que awk ferait mieux de faire du traitement multiligne, mais je ne sais pas […]

J’ai besoin de ma commande sed -i pour que l’édition sur place fonctionne avec GNU sed et BSD / OSX sed

J’ai un fichier makefile (développé pour gmake sous Linux) que je tente de transférer sur OSX, mais il semble que sed ne veuille pas coopérer. Ce que je fais, c’est utiliser GCC pour générer automatiquement des fichiers de dépendance, puis les modifier un peu avec sed. La partie pertinente du fichier Make: $(OBJ_DIR)/%.d: $(SRC_DIR)/%.cpp $(CPPC) […]