pwd de la recherche [FIND] - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 20-05-2008 à 11:36:44
find /plop -name "test.txt" -exec cp {} $(dirname {})/test.copy \;
Un truc du genre ?
Je n'ai pas de de linux pour tester là
Marsh Posté le 20-05-2008 à 11:46:12
plag a écrit : En gros je veux trouvé le fichier test.txt et le copier là ou il se trouve (le tout en partant de /plop) |
Si j'ai bien compris ce que tu veux, execdir devrait faire l'affaire :
find /plop -name "test.txt" -execdir cp {} test.copy \; |
plag a écrit : find /plop -name "test.txt" -exec cp {} $(dirname {})/test.copy \; |
Ca ne marche pas parce que le $(dirname) est interprété directement par le shell au moment où tu lances la commande.
Marsh Posté le 20-05-2008 à 11:48:06
Taz a écrit : dirname |
Comment tu fais pour que le 'dirname' ne soit interprété qu'au moment de la résolution du '-exec' et pas directement par le shell ?
Marsh Posté le 20-05-2008 à 12:02:20
Re, je viens de tester
Code :
|
Il y a une façon old school ?
Marsh Posté le 20-05-2008 à 13:03:30
find /plop -name "test.txt" -exec sh -c 'cp {} `dirname {}`' \; |
Edit : hmm ouais en fait apparement t'es pas sous linux, et avec certaines version de find ça va pas marcher parce qu'il n'interprètent pas les {} dans la chaine (genre sous AIX).
Marsh Posté le 20-05-2008 à 13:07:32
find /plop -name "test.txt" -exec sh -c 'cp {} $(dirname {})/test.copy' \;
Merci \o/
Marsh Posté le 20-05-2008 à 13:40:06
matafan a écrit :
|
je connaissais pas la méthode d'encapsulation dans un autre shell
EDIT: concernant l'interprétation des {} dans la chaine, peut-être qu'on peut s'en sortir comme ça :
find /plop -name "test.txt" -exec sh -c 'cp "$1" `dirname "$1"`' cp {} \; |
Marsh Posté le 20-05-2008 à 11:03:56
Bonjour
Je cherche la variable que est positionné au pwd courant de la recherche.
Je m'explique:
J'ai une archi,
/plop
/plop/archi1/archi2
/plop/archi3
/plop/archi4
/plop/archi1/archi2/test.txt
En gros je veux trouvé le fichier test.txt et le copier là ou il se trouve (le tout en partant de /plop)
Merci de votre aide
Message édité par plag le 20-05-2008 à 11:06:02