[Shell] recopier le contenu d'un dossier.
Résolu/Fermé
devtroll
Messages postés
12
Date d'inscription
samedi 26 mai 2007
Statut
Membre
Dernière intervention
29 octobre 2007
-
26 mai 2007 à 13:15
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 - 27 mai 2007 à 14:26
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 - 27 mai 2007 à 14:26
A voir également:
- [Shell] recopier le contenu d'un dossier.
- Mettre un mot de passe sur un dossier - Guide
- Dossier appdata - Guide
- Word a trouvé du contenu illisible - Guide
- Dossier rar - Guide
- Classic shell windows 10 français - Télécharger - Personnalisation
13 réponses
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
27 mai 2007 à 14:26
27 mai 2007 à 14:26
Salut,
pour cp c'est la même option -p
pour cp c'est la même option -p
lami20j@debian:~$ ls -al /etc/skel/ total 12 drwxr-xr-x 2 root root 1024 2003-08-11 10:19 . drwxr-xr-x 122 root root 6144 2007-05-27 18:06 .. -rw-r--r-- 1 root root 220 2006-12-11 22:20 .bash_logout -rw-r--r-- 1 root root 414 2006-12-11 22:20 .bash_profile -rw-r--r-- 1 root root 2227 2006-12-11 22:20 .bashrc lami20j@debian:~$ mkdir newrep lami20j@debian:~$ ls -A1 /etc/skel | xargs -I fic cp -pv /etc/skel/fic newrep/ `/etc/skel/.bash_logout' -> `newrep/.bash_logout' `/etc/skel/.bash_profile' -> `newrep/.bash_profile' `/etc/skel/.bashrc' -> `newrep/.bashrc' lami20j@debian:~$ ls -al newrep/ total 28 drwxr-xr-x 2 lami20j lami20j 4096 2007-05-27 18:31 . drwxr-xr-x 126 lami20j lami20j 12288 2007-05-27 18:31 .. -rw-r--r-- 1 lami20j lami20j 220 2006-12-11 22:20 .bash_logout -rw-r--r-- 1 lami20j lami20j 414 2006-12-11 22:20 .bash_profile -rw-r--r-- 1 lami20j lami20j 2227 2006-12-11 22:20 .bashrc
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 895
26 mai 2007 à 13:25
26 mai 2007 à 13:25
Salut,
for i in $(ls -a /chemin/rep); do cp "$i" /new/rep/ ; done;-))
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
26 mai 2007 à 13:51
26 mai 2007 à 13:51
Salut,
lit man cp pour voir toutes les options de la commande cp
lit man cp pour voir toutes les options de la commande cp
lami20j@debian:~/trash$ ls -al rep total 24 drwxr-xr-x 2 lami20j lami20j 4096 2007-05-26 13:53 . drwxr-xr-x 33 lami20j lami20j 20480 2007-05-26 13:55 .. -rw-r--r-- 1 lami20j lami20j 0 2007-05-26 13:53 a -rw-r--r-- 1 lami20j lami20j 0 2007-05-26 13:53 aa -rw-r--r-- 1 lami20j lami20j 0 2007-05-26 13:53 aaa -rw-r--r-- 1 lami20j lami20j 0 2007-05-26 13:53 .b -rw-r--r-- 1 lami20j lami20j 0 2007-05-26 13:53 .bb -rw-r--r-- 1 lami20j lami20j 0 2007-05-26 13:53 .bbb lami20j@debian:~/trash$ ls -al newrep ls: newrep: Aucun fichier ou répertoire de ce type lami20j@debian:~/trash$ cp -vR rep newrep `rep' -> `newrep' `rep/.bbb' -> `newrep/.bbb' `rep/aa' -> `newrep/aa' `rep/a' -> `newrep/a' `rep/aaa' -> `newrep/aaa' `rep/.bb' -> `newrep/.bb' `rep/.b' -> `newrep/.b' lami20j@debian:~/trash$ ls -al newrep total 24 drwxr-xr-x 2 lami20j lami20j 4096 2007-05-26 13:55 . drwxr-xr-x 34 lami20j lami20j 20480 2007-05-26 13:55 .. -rw-r--r-- 1 lami20j lami20j 0 2007-05-26 13:55 a -rw-r--r-- 1 lami20j lami20j 0 2007-05-26 13:55 aa -rw-r--r-- 1 lami20j lami20j 0 2007-05-26 13:55 aaa -rw-r--r-- 1 lami20j lami20j 0 2007-05-26 13:55 .b -rw-r--r-- 1 lami20j lami20j 0 2007-05-26 13:55 .bb -rw-r--r-- 1 lami20j lami20j 0 2007-05-26 13:55 .bbb
devtroll
Messages postés
12
Date d'inscription
samedi 26 mai 2007
Statut
Membre
Dernière intervention
29 octobre 2007
1
26 mai 2007 à 14:04
26 mai 2007 à 14:04
En fait j'avais deja testé une methode comme ça mais avec un -Ra mais j'ai toujours le meme probleme...
mkdir /home/$utilisateur/
for i in $(ls -a /etc/skel)
do
cp $i /home/$utilisateur/
done
Ce qui me donne pas mal d'erreur du genre :
cp: ne peut evaluer '.infobash' : Aucun fichier ou répertoire de ce type
sinon lami ta methode est bien... mais le probleme c'est que je ne veut pas fair un copier coller du dossier mais juste de son contenue.
mkdir /home/$utilisateur/
for i in $(ls -a /etc/skel)
do
cp $i /home/$utilisateur/
done
Ce qui me donne pas mal d'erreur du genre :
cp: ne peut evaluer '.infobash' : Aucun fichier ou répertoire de ce type
sinon lami ta methode est bien... mais le probleme c'est que je ne veut pas fair un copier coller du dossier mais juste de son contenue.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
dubcek
Messages postés
18718
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
22 mars 2024
5 615
26 mai 2007 à 14:21
26 mai 2007 à 14:21
mkdir /home/$utilisateur/
cd /etc/skel ; tar -cf - . | (cd /home/$utilisateur ; tar -xvf -)
cd /etc/skel ; tar -cf - . | (cd /home/$utilisateur ; tar -xvf -)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
26 mai 2007 à 14:37
26 mai 2007 à 14:37
une autre possibilité
lami20j@debian:~/trash$ mkdir newrep lami20j@debian:~/trash$ ls -A1 rep a aa aaa .b .bb .bbb lami20j@debian:~/trash$ ls -A1 rep | xargs -I fic cp -v rep/fic newrep/ `rep/a' -> `newrep/a' `rep/aa' -> `newrep/aa' `rep/aaa' -> `newrep/aaa' `rep/.b' -> `newrep/.b' `rep/.bb' -> `newrep/.bb' `rep/.bbb' -> `newrep/.bbb' lami20j@debian:~/trash$ ls -A1 newrep/ a aa aaa .b .bb .bbb
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
26 mai 2007 à 14:39
26 mai 2007 à 14:39
Dans ton cas
$ mkdir newrep $ ls -A1 /etc/skel | xargs -I fic cp -v /etc/skel/fic newrep/ `/etc/skel/.bash_logout' -> `newrep/.bash_logout' `/etc/skel/.bash_profile' -> `newrep/.bash_profile' `/etc/skel/.bashrc' -> `newrep/.bashrc' $ ls -A1 newrep/ .bash_logout .bash_profile .bashrc
devtroll
Messages postés
12
Date d'inscription
samedi 26 mai 2007
Statut
Membre
Dernière intervention
29 octobre 2007
1
26 mai 2007 à 14:55
26 mai 2007 à 14:55
Yes ça marche merci tout le monde ! Dite par hazard quand je copie les fichier je le fait en root, c'est possible que malgré que je lance ce shell en root que le proprietaire et le groupe des fichiers et dossiers ne soit pas root ?
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
26 mai 2007 à 14:59
26 mai 2007 à 14:59
Je ne suis pas sur d'avoir compris ta question.
En revanche tu peux toujours modifier les droits avec chmod
En revanche tu peux toujours modifier les droits avec chmod
devtroll
Messages postés
12
Date d'inscription
samedi 26 mai 2007
Statut
Membre
Dernière intervention
29 octobre 2007
1
26 mai 2007 à 15:41
26 mai 2007 à 15:41
Euh.. he bien est que je doit traité mes fichier et dossier un par un avc des chgrp et chown ou je peu directement qand je fait par exemple (cd /home/$utilisateur ; tar -xvf -) mettre comme proprietaire $utilisateur et come groupe "users" ?
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
26 mai 2007 à 16:39
26 mai 2007 à 16:39
Euh.. he bien est que je doit traité mes fichier et dossier un par un avc des chgrp et chown
Non, pas du tout :-)
Tu as l'option -R pour le mode recursif
-v c'est pour verbose (c'est à dire que tu verras à l'écran ce que la commande fait)
Non, pas du tout :-)
Tu as l'option -R pour le mode recursif
-v c'est pour verbose (c'est à dire que tu verras à l'écran ce que la commande fait)
chown -vR proprietaire:groupe /chemin/vers/repertoire
devtroll
Messages postés
12
Date d'inscription
samedi 26 mai 2007
Statut
Membre
Dernière intervention
29 octobre 2007
1
26 mai 2007 à 17:27
26 mai 2007 à 17:27
OK je te remercie !
Alors pour recopiez le contenue d'un repertoire :
puis pour modifier le proprietaire des fichier nouvelement copié :
Voila encore merci!
Alors pour recopiez le contenue d'un repertoire :
mkdir /home/$utilisateur/ cd /etc/skel ; tar -cf - . | (cd /home/$utilisateur ; tar -xvf -)
puis pour modifier le proprietaire des fichier nouvelement copié :
chown -R $NUSER:"users" /home/$NUSER chown $NUSER:"users" /home/$NUSER
Voila encore merci!
dubcek
Messages postés
18718
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
22 mars 2024
5 615
27 mai 2007 à 14:22
27 mai 2007 à 14:22
Avec tar, il faut utiliser l'option -p pour garder le bon proprio:
mkdir /home/$utilisateur/
cd /etc/skel ; tar -cf - . | (cd /home/$utilisateur ; tar -xpvf -)
mkdir /home/$utilisateur/
cd /etc/skel ; tar -cf - . | (cd /home/$utilisateur ; tar -xpvf -)