#1 Le 22/07/2010, à 19:04
- fove2
bien comprendre la récurcivité des commandes avec ".."
Bonjour,
je suis un utilisateur très régulier du shell mais j'ai encore quelques soucis (assez énervants) que je n'arrive pas à maitriser concernant la récursivité du paramètre -R avec de nombreuses commandes. En effet, j'ai remarquer, la première fois où j'ai du utiliser un cp -R sur un petit répertoire, que cette commande m'a copier l'intégralité de mon / et que cp -R concernerait en fait toute mon arborescence !
Heureux que ma première expérimentation de la récursivité n'ai pas eu lieux avec un rm (...) j'ai vite compris l'astuce ; en fait "-R" va traiter tout les dossier contenus dans le dossier visé, donc aussi le dossier ".." (dossier parent) ainsi que -par récursivité- (puisque c'est ce que l'on a demander) tous les dossier de ".." y compris son ".." à lui, c'est à dire sont propre dossier parent, et ainsi de suite jusqu'à / (qui n'a d'autres dossier parents que lui même) avant de redescendre dans l'arborescence et toucher tous les fichiers de mon disque dure... autant dire que [cp|mv|rm] -R truc = [cp|mv|rm] -R /* ...
je viens donc demander comment spécifier une récursivité mais sans que celle ci ne comprenne les dossier ".." contenus dans les répertoires que ma commande aura à traiter.
Bien à vous,
cordialement.
Hors ligne
#2 Le 22/07/2010, à 19:35
- miniSeb
Re : bien comprendre la récurcivité des commandes avec ".."
Hum.. Je ne peux pas régler ton problème, mais je peux t'affirmer que -R ne copie/remove/etc. pas le ".." (je viens de vérifier parce que tu m'as fait douter, mais non) mais bien uniquement les fichiers suivants
Quelle commande as-tu effectuée pour arriver à ce résultat ?
Hors ligne
#3 Le 22/07/2010, à 19:37
- neodc
Re : bien comprendre la récurcivité des commandes avec ".."
salut,
je suis pas un grand utilisateur mais j'ai déjà utilisé -R et n'ai jamais eu ce problème je pense donc que ton erreur était de mettre un espace après le / se qui fait qu'il comprend copier la racine (/) et se que tu voulait copié si c'est pas ça je sais pas
Hors ligne
#4 Le 22/07/2010, à 22:52
- ehmicky
Re : bien comprendre la récurcivité des commandes avec ".."
Salut,
Même chose. Je me demande comment tu as fait ton histoire, tu pourrais reproduire ceci et envoyer la ligne de commande et l'output ?
A moins peut-être d'avoir l'option dotglob activée avec shopt, mais ça m'étonnerais (désactivé par défaut sous Ubuntu)...
Peut-être as-tu cibler le répertoire root sans le savoir à cause du globbing et une mauvaise utilisation du caractère * ?
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
#5 Le 23/07/2010, à 01:30
- fove2
Re : bien comprendre la récurcivité des commandes avec ".."
rebonjour,
je précise que c'est la commande mv -R qui me fais ça, ça m'arrive sans utiliser de joker * par contre il est possible que ce soit l'espace en fin qui pose problème vue que j'en met systématiquement dés que j'écrit une commande.
je refais un test et je poste la sortie standard.
Hors ligne
#6 Le 23/07/2010, à 01:44
- fove2
Re : bien comprendre la récurcivité des commandes avec ".."
@ehmicky: evidement que je n'ai pas activer dotglob
voila le répértoir contenant toutes mes éxperimentations :
fove48@OperateurNoir:~/Informatique/éxpérience$ tree
.
├── dossiercopie
└── testdemvbis
├── Fichier texte
├── Fichier texte_1
└── sousdossiermv
└── Fichier texte
3 directories, 3 files
fove48@OperateurNoir:~/Informatique/éxpérience$
voila le premier test que j'éffectue :
fove48@OperateurNoir:~/Informatique/éxpérience$ mv -R testdemvbis/ dossiercopie/
mv: option invalide -- 'R'
Pour en savoir davantage, faites: « mv --help ».
en fait la commande mv ne peut qu'être récurcive ... (faut aussi lire le man )
parcontre j'ai éssayer la même chose mais avec cp et là ça a fonctionner, même lorceque je laisse un éspace en fin de ligne contrairement à ce que pense neodc. J'avoue ne pas comprendre, cela dit de tel prolèmes sont arrivés lorceque j'ai essailler de copier mon $HOME entier, cerait-ce un dysfonctionnement n'apparaissant qu'avec de gros dossier ? d'autre part je viens de constater que cp ne sais pas copier un dossier vers lui même, ce qui pourtant, n'est pas illogique (mais c'est une autre histoire).
en attendant de bien éclaircir cette affaire, j'ai encore peur des rm -R
merci pour votre aide, je continuer à chercher.
Hors ligne
#7 Le 23/07/2010, à 02:19
- damnit
Re : bien comprendre la récurcivité des commandes avec ".."
Salut,
J'autilisé pas mal de fois
rm -rf /rep_cible
pour virer des dossier me servant plus ou de programmes, je n'ai jamais eus ce soucis! l'as tu faite plusieurs fois cette commande ?
Acer [ Squeeze + Openbox ] / Thinkcentre [ Debian Lenny ] / Asus [ Ubuntu 10.04 EMT64 / UbuntuStudio 10.04 EMT64 ]
Hors ligne
#8 Le 23/07/2010, à 07:50
- credenhill
Re : bien comprendre la récurcivité des commandes avec ".."
hello
je ne fais jamais
rm -rf /a/b/c
mais
cd /a/b ;rm -rf c
Hors ligne
#9 Le 24/07/2010, à 02:34
- fove2
Re : bien comprendre la récurcivité des commandes avec ".."
hello
je ne fais jamaisrm -rf /a/b/c
mais
cd /a/b ;rm -rf c
tu pense que ça serait ça au final ? je fais un test et je poste le résultat.
Hors ligne
#10 Le 24/07/2010, à 07:43
- credenhill
Re : bien comprendre la récurcivité des commandes avec ".."
je fais ça par précaution, surtout en root de ne pas avoir un / devant, un espace malencontreux est si vite arrivé.
par ex., qui n'a pas fait une fois :
rm * .tmp
OOOOpss un espace de trop
Hors ligne
#11 Le 24/07/2010, à 17:30
- fove2
Re : bien comprendre la récurcivité des commandes avec ".."
hmm, ça m'étonnerais que ce soit ça la cause de mon soucis, par contre, ce soir, j'essayerais de copier tout mon $HOME (car c'est souvent en fesant ça que je m'aperçois du problème)
Hors ligne