Étiquette : xargs

8 juillet 2019 /

Lorsque le nombre de fichiers dans un répertoire dépasse les 30000, cela peut constituer un problème.

Voici les étapes à suivre pour mener à bien cette tâche
find . -name '*.txt' -print >/tmp/fichiers_a_archiver
tar -cvzf fichiers_a_archiver.tar.gz --files-from /tmp/fichiers_a_archiver
find . -name '*.txt' | xargs rm -v

 

4 juin 2018 /
Pour faire une sauvegarde des fichiers de plus de 180 jours dans une archives compressée
find . -mtime +180 -print0 | xargs -0 tar -zcf ../backup_04-06-2018.tar.gz
Pour connaitre le nombre de fichiers que nous avons sauvegardé
find . -mtime +180 -exec ls -1 {} + | wc -l
Il ne reste plus qu'a supprimer les fichiers que nous venons de sauvegarder
find . -mtime +180 -exec rm {} +
22 novembre 2015 /

J’ai rencontré cette petite erreur avec des répertoires contenant des millions de fichiers, qu’on vous demande de lister/supprimer, voici la solution la plus rapide.

find /chemin/repertoire -type f -name '*.log' | xargs rm -f

ou

find /chemin/repertoire -type f -name '*.log' -delete

ou encore :

find /chemin/repertoire -type f -name '*.log' -exec rm -rf {};

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 {}