#1 Le 28/11/2010, à 10:27
- omnimax
cherche commande pour tout effacer
Bonjour,
j'ai une clé usb où j'ai recréé l'arborescence vide de mon réseau que je synchronise avec celui-ci.
Seulement au bout d'une utilisation prolongée, j'aimerai pouvoir vider cette clé usb sans toucher au dossier.
Connaissez-vous la commande ? merci.
14.04 unity et Linux Mint KDE 13 zsh-meilleur shell script fire
Hors ligne
#2 Le 28/11/2010, à 10:29
- helly
Re : cherche commande pour tout effacer
Bonjour.
Tu peux utiliser simplement la commande dd .
edit : ↓ ha, j'ai dû mal comprendre !!
Dernière modification par helly (Le 28/11/2010, à 10:34)
Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.
Hors ligne
#3 Le 28/11/2010, à 10:33
- Nrm
Re : cherche commande pour tout effacer
il faudrait que tu fasse un script bash, recursif qui rentre dans les dossiers et qui supprime tout ce qui n'est pas un dossier.
J'ai écrit un truc un peut similaire, je pourrait te le donner en exemple, mais il faudrat que tu fasse des modifications
bon courage
Hors ligne
#4 Le 28/11/2010, à 10:34
- cep
Re : cherche commande pour tout effacer
quelque chose comme :
find ./* \( ! -name 'fichier_un_conserver' -a ! -name 'fichier_deux_conserver' \) -exec rm {} \;
qui va effacer tous les fichiers dans le répertoire courant, sauf x et y.
ou un find basé sur la date des fichiers.
etc. etc.
Hors ligne
#5 Le 28/11/2010, à 13:33
- ehmicky
Re : cherche commande pour tout effacer
Salut,
Juste une petite précision car :
find ./*
contrairement à :
find .
(ou simplement find) ne supprimera pas les dotfiles (fichiers dont le nom de fichier commence par un point).
Par ailleurs, sans l'option -depth (impliquée par -delete), -exec rm -R {} cherchera à supprimer les dossiers avant leur contenu, ce qui fera que si un dossier contient 'fichier_un_conserver", il sera supprimé avec "fichier_un_conserver". Donc :
find \! \( -name "fichier_un_conserver" -name "fichier_deux_conserver" \) -delete 2> /dev/null
Dernière modification par ehmicky (Le 28/11/2010, à 13:41)
Stego++, bibliothèque libre de stéganographie (avec cryptographie), à venir !
Besoin de votre aide :
Stats sur les compilateurs C++ les plus utilisés
Comment utiliser les archetypes C++ ?
Hors ligne
#6 Le 28/11/2010, à 13:55
- pode
Re : cherche commande pour tout effacer
S'il s'agit de supprimer tous les fichiers d'une arborescence, sans toucher aux répertoires, cela peut se faire comme ça :
Avant :
tree -a rep1/
rep1/
├── f1
├── rep2
│ └── f2
└── rep3
├── f3
└── .f4
Commande de nettoyage :
find rep1/ -type f -delete
Après :
tree -a rep1/
rep1/
├── rep2
└── rep3
Hors ligne
#7 Le 28/11/2010, à 14:38
- Nrm
Re : cherche commande pour tout effacer
J'ai un peut de temps pour te mettre un script qui pourrait permettre de faire ce que tu veut, à adapter a ton cas peut-être
#!/bin/bash
ls "$1" | while read FILE
do
if [ -d "$1/$FILE" ]
then
echo "Entré dans le dossier : $1/$FILE"
cd "$1/$FILE"
chemin_du_script "$1/$FILE"
cd ../
else
echo "suppression du fichier : $1/$FILE"
rm "$1/$FILE"
fi
done
Hors ligne