Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 31/12/2018, à 15:46

mickyshoot

suppression de repertoire et contenu sur chaine caractere = date - 3J

Bonjour

je cherhce à realiser un petit script qui va scnner le repertoir XXX pour retrouver les repertoirs qui s'appelent 201812xx et les supprimer avec leur contenu

j'ai réalisé ca mais le resultat affiche toute sorte de repertoire et fichier

je mets volontairement un ls -lh pour eviter de me tromper sur un rm

test=$(date --date '2 days ago' +"%Y%m%d")
echo "$test"
find /usr/XXX -name $test -exec ls -lh {} \;

Merci pour votre aide

Hors ligne

#2 Le 31/12/2018, à 17:36

diesel

Re : suppression de repertoire et contenu sur chaine caractere = date - 3J

for i in /usr/XXX/201812??
do rm -R $i
done

Amicalement.

Jean-Marie

Dernière modification par diesel (Le 31/12/2018, à 17:39)


Je déteste qu'on cherche à me faire passer pour un con, j'y arrive déjà très bien tout seul.
Le mort, il sait pas qu'il est mort ; c'est pour les autres que c'est dur.................... Pour les cons, c'est pareil.

Hors ligne

#3 Le 03/01/2019, à 07:57

MicP

Re : suppression de repertoire et contenu sur chaine caractere = date - 3J

Bonjour

mickyshoot a écrit :
…
test=$(date --date '2 days ago' +"%Y%m%d")
…

Ce n'est pas du tout une bonne idée d'utiliser comme nom de variable un nom de commande

Voir :

man test

Hors ligne

#4 Le 03/01/2019, à 08:12

pingouinux

Re : suppression de repertoire et contenu sur chaine caractere = date - 3J

Bonjour,

mickyshoot #1 a écrit :

j'ai réalisé ca mais le resultat affiche toute sorte de repertoire et fichier

find /usr/XXX -name $test -exec ls -lh {} \;

Cette commande te liste le contenu des répertoires répondant au critère de recherche.
Pour y remédier, tu peux faire ceci :

find /usr/XXX -name "$test" -exec ls -lhd {} \;

ou

find /usr/XXX -name "$test" -ls

Tu peux aussi ajouter -type d puisque tu ne cherches que les répertoires répondant au critère.

Je partage la remarque de MicP #3.

Hors ligne

#5 Le 03/01/2019, à 14:42

mickyshoot

Re : suppression de repertoire et contenu sur chaine caractere = date - 3J

Bonjour
Merci j'ai trouvé cette solution qui fonctionne

#!/bin/bash


D=$(date --date '2 days ago' +"%Y%m%d")
echo "$D"


for F in /usr/netscreen/DevSvr/var/logs/
do rm -Rf "$F"/"$D"
done

Hors ligne

#6 Le 03/01/2019, à 14:44

mickyshoot

Re : suppression de repertoire et contenu sur chaine caractere = date - 3J

Enfin, j'ai pu trouver grace à votre aide

Merci beaucoup

Hors ligne