OVH Cloud OVH Cloud

exécuter commande bash

12 réponses
Avatar
seb
Bonjour,

Dans un script bash je construis une chaine de caractères de cette forme:
COMMAND="find /mon/chemin -maxdepth 2 -user xxx -group yyy -print -exec
chown aaa:bbb {} \;"

Quand j'exécute cette commande j'ai probablement un problème de guillemets
dans ma chaine de caractères mais je n'arrive pas à mettre le doigt dessus.
J'obtiens l'erreur suivante:
find: missing argument to `-exec'

Comment exécuter cette chaine ?

seb

2 réponses

1 2
Avatar
Pascal Bourguignon
Stephane Chazelas writes:

2004-09-14, 12:59(+00), Pascal Bourguignon:
[...]
Dans mon cas, c'est parce que je sais me servir de awk, mais pas de
cut, et comme awk sait faire tout ce que sait faire cut, je ne vois
pas de raison de perdre mon temps avec man cut...


Pas tous les awk. Le vieux awk ne sait pas faire de decoupage à
la cut avec des espaces (on peut l'implementer a la main en
utilisant substr et index mais ca devient fastidieux) (avec le
nouveau awk, on peut utiliser awk -F '[ ]'). Certaines
implementations de awk souffrent aussi de certaines limitations
(nombre de champs, longueur des lignes...)



Quand on a un awk bogué, rien de plus simple de de fetcher celui de
gnu.org et se le recompiler...


--
__Pascal Bourguignon__ http://www.informatimago.com/

Our enemies are innovative and resourceful, and so are we. They never
stop thinking about new ways to harm our country and our people, and
neither do we.


Avatar
Stephane Chazelas
2004-09-14, 19:56(+00), Pascal Bourguignon:
[...]
Pas tous les awk. Le vieux awk ne sait pas faire de decoupage à
la cut avec des espaces (on peut l'implementer a la main en
utilisant substr et index mais ca devient fastidieux) (avec le
nouveau awk, on peut utiliser awk -F '[ ]'). Certaines
implementations de awk souffrent aussi de certaines limitations
(nombre de champs, longueur des lignes...)


Quand on a un awk bogué, rien de plus simple de de fetcher celui de
gnu.org et se le recompiler...


En l'occurrence, gawk a une longue histoire de gros bugs et le
oawk est en general beaucoup plus stable. C'est just que c'est
la version originale sans les extensions (FS supportant les
regexps en l'occurrence) apportees par la nouvelle version ou
par GNU.

--
Stephane


1 2