Vider un dossier sans le supprimer

Je n’arrive pas à trouver une commande qui fasse ça.
J’ai bien dit “VIDER” et non "supprimer"
Je sais faire pour un fichier : >
mais pour un dossier :question:
Je sais aussi supprimer et recréer mais je ne veux pas.

cd le fichier; puis ls; puis rm la liste ou rm -R si le fichier a des fichiers dedans. Pas très orthodoxe ni joli.

Oui, bien sûr, en plusieurs étapes, je sais faire mais je pensais qu’il existait une commande unique, comme pour un fichier : > /le_fichier

Absolument: formatage du disque!

$ rm dossier/*avec éventuellement l’option -r si le dossier contient d’autres dossiers.

Absolument: formatage du disque![/quote] :mrgreen: :smt005

oui mais ça, ça le supprime, le dossier et moi, je ne veux QUE le VIDER

J’ai oublié le smiley. Mais Ursus a la solution! Je l’avais oublié.

En effet, ça fonctionne.
merci à vous deux.

bonne nuit :smt006

En fait non, ça ne fonctionne pas :cry:
listage du dossier /mnt/autre/supprimes/

ricardo@Dell-sid:~$ sudo ls -A /mnt/autre/supprimes/ .bash_history .config .DCOPserver_Dell-sid__0 .gconfd .kde .mozilla .cache .dbus .fonts .ICEauthority .local .xsession-errors
essai de “vidage” du dossier /mnt/autre/supprimes/

ricardo@Dell-sid:~$ sudo rm -R /mnt/autre/supprimes/* rm: ne peut enlever `/mnt/autre/supprimes/*': Aucun fichier ou dossier de ce type
même chose avec -r à la place de -R

ricardo@Dell-sid:~$ sudo rm -r /mnt/autre/supprimes/* rm: ne peut enlever `/mnt/autre/supprimes/*': Aucun fichier ou dossier de ce type
Essais fait aussi en tty, en $, en #.

Je suis donc toujours à la recherche d’une commande qui permette de “VIDER” un dossier sans le “supprimer”.

essaye pour commencer:

ls -a LE-REPERTOIRE | xargs echo | sed 's/\.\///' | sed 's/\.\.\///'

ça devrait lister tout ce qui est dans ton répertoire (fichiers cachés compris. Si c’est bon, tu fais:

Il y a certainement plus élégant!

Pour les fichiers cachés, le -A (majuscule) suffit et dans mon exemple, on les voit bien.
Pour ta commande, en effet, elle est un peu barbare mais ce n’est pas ça qui me dérangerait, plutôt le ‘rm -Rf’ dont je me méfie toujours car une mauvaise frappe est si vite arrivée . :smt005

Je viens de faire l’essai, toujours avec la commande donnée par Ursus, mais cette fois, sur un dossier dans /home ricardo et là, ça fonctionne.
J’en déduis donc qu’il s’agit d’une question de DD ext, sur lequel il me faut chercher.
À ce soir.

[quote=“ricardo”]Pour les fichiers cachés, le -A (majuscule) suffit et dans mon exemple, on les voit bien.
Pour ta commande, en effet, elle est un peu barbare mais ce n’est pas ça qui me dérangerait, plutôt le ‘rm -Rf’ dont je me méfie toujours car une mauvaise frappe est si vite arrivée . :smt005[/quote]

à éviter en étant root. C’est une commande taboo. :slightly_smiling:

pour supprimer les fichiers cachés:rm -r /mnt/autres/.*ça devrait retourner une erreur concernant les . et … mais c’est pas grave je pense.

Chez moi, en étant placé dans le dossier,

rm * && rm .* me vide tout sans me supprimer le dossier.

Quoi de plus simple ?

Quoi de plus simple ?

[quote=“vv222”]rm -r /chemin/dossier/* /chemin/dossier/.*
Quoi de plus simple ?[/quote]
Ben voilà, la chose à laquelle je n’avais pas fait attention, c’est que tous les dossiers et fichiers présents étaient des fichiers cachés et je n’avais pas porté le ‘.’ devant l’*'
merci à tous, cette fois, c’est vraiment résolu.
Toutefois, cette réponse m’interpelle et, bien que ts les dossiers/fichiers aient été supprimés, je me demande si je dois en tenir compte ???

ricardo@Dell-sid:~$ sudo rm -r /mnt/autre/supprimes/.* rm: ne peut détruire `.' le répertoire `/mnt/autre/supprimes/.' rm: ne peut détruire `..' le répertoire `/mnt/autre/supprimes/..'

@ ziouplaboum :
à éviter en étant root. C’est une commande taboo.
oui, je comprends le danger mais en l’occurrence, il n’y en a pas car je vire des fichiers/dossiers qui ne sont là que pour contrôle après une sauvegarde par 'rsync’
Tu as raison de mettre en garde quand même car d’autres pourraient copier sans prêter attention et virer des “.dossier” c’est parfois dangereux.

@ursus
ça devrait retourner une erreur concernant les . et … mais c’est pas grave je pense.
C’est en effet ça qui m’a interpellé.

find dossier | tail -n +2 | xargs rm -R

[quote]Toutefois, cette réponse m’interpelle et, bien que ts les dossiers/fichiers aient été supprimés, je me demande si je dois en tenir compte ???
Code:
ricardo@Dell-sid:~$ sudo rm -r /mnt/autre/supprimes/.*
rm: ne peut détruire .' le répertoire/mnt/autre/supprimes/.‘
rm: ne peut détruire ..' le répertoire/mnt/autre/supprimes/…’[/quote]

Je trouve ça plutôt rassurant, il te dit juste qu’il n’a pas détruit le répertoire que tu voulais vider
ni son répertoire parent, c’est ce que tu voulais.