Étiquette : awk

23 février 2018 /

Recherche simple:

grep ext4 /etc/fstab

awk /ext4/ /etc/fstab

Recherche en ignorant la casse:

grep -i ext4 /etc/fstab

awk /ext4/ IGNORECASE=1 /etc/fstab

Compter le nombre d’occurrence:

grep -c ext4 /etc/fstab

awk '/ext4/{x++;}END{print x}' /etc/fstab

Liste des fichiers contenant le mot recherché:

grep -l ext4 *

awk '/ext4/{print FILENAME;nextfile}' *

Afficher le numéro des lignes contenant le mot recherché:

grep -n ext4 /etc/fstab

awk '/ext4/{print NR":"$0}' /etc/fstab

Recherche de plusieurs occurrences:

grep -E 'ext4|swap' /etc/fstab

awk '/ext4|swap/' /etc/fstab

Afficher les lignes qui ne contiennent pas le mot recherché:

grep -v ext4 /etc/fstab

awk '!/ext4/' /etc/fstab

Pour afficher les lignes contenant le mot rechercher ainsi que la ligne suivante:

grep -A1 ext4 /etc/fstab

awk '/ext4/{print;getline;print}' /etc/fstab

Pour afficher les lignes contenant le mot rechercher ainsi que la ligne précédente:

grep -B1 ext4 /etc/fstab

awk '/ext4/{print x;print;next}{x=$0;}' /etc/fstab

Pour afficher les lignes contenant le mot rechercher ainsi que la ligne précédente et la ligne suivante:

grep -C1 ext4 /etc/fstab

awk '/ext4/{print x;print;getline;print;next}{x=$0;}' /etc/fstab

27 décembre 2015 /

Voici une petite astuce qui permet d’obtenir la liste des liens symboliques contenus dans un répertoire:

ls -F | grep @$ | awk -F@ '{print $1}'

La même chose mais cette fois de façon récursive:

find . -type l

3 novembre 2015 /

Voici une petite commande pour débugger un serveur Apache. Elle fait un strace sur tous les processus Apache qui tournent sur la machine. Vous pourrez facilement identifier les nœuds d’étranglement avant une mise en production, ou détecter une procédure qui bloque.

Pour une distribution RPM :

ps awux | grep sbin/httpd | awk '{print"-p " $2}' | xargs strace -f

Pour une distribution Debian, (« apache » au lieu de « httpd »):

ps awux | grep sbin/apache | awk '{print"-p " $2}' | xargs strace -f

 

8 octobre 2015 /

Un petit script pour tuer un processus qui dure trop longtemps (ici php):

#!/bin/bash
/bin/ps -eo pid,etime,command|/bin/grep /usr/local/zend/bin/php|/bin/egrep '([0-9]+)([ ]+)([2-9]{1}[0-9]{1}:[0-9]{2})'|/bin/awk '{print $1}'|xargs -I{} kill {}