La commande sort
Résolu/Fermé
CYG
-
3 mars 2008 à 13:26
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 3 mars 2008 à 16:27
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 3 mars 2008 à 16:27
A voir également:
- La commande sort
- Invite de commande - Guide
- Commande terminal mac - Guide
- Aucun son ne sort de mon pc - Guide
- Diskpart commande - Guide
- Commande dism - Guide
5 réponses
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
3 mars 2008 à 13:35
3 mars 2008 à 13:35
Salut,
Pas sûr d'avoir tout pigé là ;-\
Déjà que vient faire la commande "sort" dans ton histoire ?
Ensuite, si tu veux copier dans un sous-répertoires (sans underscore si j'ai bien compris) tous les fichiers "doris1.in" contenus dans les sous-répertoires (avec underscore) qui commencent par le même préfixe (le nom du sous-répertoires sans underscore), va y avoir problème d'écrasement du dit fichier ou de redondance (options "-b" de la commande "cp"), non ?
PS. Regarde si tu as la commande "tree" d'installer sur ton système.
Pas sûr d'avoir tout pigé là ;-\
Déjà que vient faire la commande "sort" dans ton histoire ?
Ensuite, si tu veux copier dans un sous-répertoires (sans underscore si j'ai bien compris) tous les fichiers "doris1.in" contenus dans les sous-répertoires (avec underscore) qui commencent par le même préfixe (le nom du sous-répertoires sans underscore), va y avoir problème d'écrasement du dit fichier ou de redondance (options "-b" de la commande "cp"), non ?
PS. Regarde si tu as la commande "tree" d'installer sur ton système.
dindoun
Messages postés
1028
Date d'inscription
mercredi 23 janvier 2008
Statut
Membre
Dernière intervention
17 février 2017
135
3 mars 2008 à 15:20
3 mars 2008 à 15:20
for i in `ls |grep _` ; do cp $i/* `echo $i|cut -d'_' -f1` ; done
for i in `ls |grep _` : recherche dans le répertorie courant tout ce qui contient _ ( les répertoires )
cp $i/* les fichiers
`echo $i|cut -d'_' -f1` affiche ici tout ce qui est avant _
pour avoir une idée de ce qui va se passer à l'avance , tu peux taper
for i in `ls |grep _` ; do echo $i/* `echo $i|cut -d'_' -f1` ; done
for i in `ls |grep _` : recherche dans le répertorie courant tout ce qui contient _ ( les répertoires )
cp $i/* les fichiers
`echo $i|cut -d'_' -f1` affiche ici tout ce qui est avant _
pour avoir une idée de ce qui va se passer à l'avance , tu peux taper
for i in `ls |grep _` ; do echo $i/* `echo $i|cut -d'_' -f1` ; done
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
3 mars 2008 à 15:34
3 mars 2008 à 15:34
for i in $(ls -d *_* | sort -t_ -k 1.1,1.8 -u); do echo "cp ${i}doris1.in ${i/_*/}";doneEnlève le "echo" et les guillemets autour si c'est bon ;-))
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
3 mars 2008 à 16:27
3 mars 2008 à 16:27
De rien ;-))
3 mars 2008 à 14:13
désolé, au lieu d'écrire "cp" je me suis trompé et j ai mi "sort"
non j ai pas la commande "tree" sur ma machine, ce que je veux c'est de copier le fichier doris1.in à partir de l un des sous répertoires dans le préfixe 19920505_.... (juste une copie, c à d si je copie le fichier doris1.in du sous répertoire 19920505_19950901 ça suffit, c est pas la peine de faire une autre copie à partir du sous répertoire 19920505_19970103, parceque tous les sous répertoires dont le préfixe 19920505_ contiennent le même fichier doris1.in) et la coller dans le sous répertoire 19920505, ainsi de suite pour tout les autres sous répertoire.
j espére que maintenant c est clair
merci d avance
CYG