Hop, Sur un Linux, postfix 2.3, bash: # mailq | grep MAILER-DAE | cut -c1-11 | xargs postsuper -d postsuper: fatal: invalid directory name: 3089A2A9AEB # mailq | grep MAILER-DAE | cut -c1-11 | for i in read - ; do postsuper -d $i; done [snip] postsuper: D34B62AA563: removed postsuper: Deleted: 15 messages Quelque chose m'échappe, très certainement... Mais quoi ? Arnaud.
On Tue 23 October, Arnaud Launay wrote:
Hop,
Sur un Linux, postfix 2.3, bash:
# mailq | grep MAILER-DAE | cut -c1-11 | xargs postsuper -d postsuper: fatal: invalid directory name: 3089A2A9AEB # mailq | grep MAILER-DAE | cut -c1-11 | for i in read - ; do postsuper -d $i; done [snip] postsuper: D34B62AA563: removed postsuper: Deleted: 15 messages
Quelque chose m'échappe, très certainement... Mais quoi ?
Que la documentation de postsuper dis qu'il n'accepte qu'un seul argument à l'option -d, et que l'argument suivant est .. un répertoire postsuper [-psv] [-c config_dir] [-d queue_id] [-h queue_id] [-H queue_id] [-r queue_id] [directory ...] -d queue_id Delete one message with the named queue ID from the named mail queue(s) (default: hold, incoming, active and deferred). Je pense que le mieux est d'essayer de passer par stdout, il est possible que % mailq | grep MAILER-DAE | cut -c1-11 | postsuper -d - fonctionne -- http://asyd.net/home/ - Home Page http://guses.org/home/ - French Speaking (Open)Solaris User Group
Le Tue, Oct 23, 2007 at 06:19:41PM +0200, Bruno Bonfils a écrit:
# mailq | grep MAILER-DAE | cut -c1-11 | xargs postsuper -d postsuper: fatal: invalid directory name: 3089A2A9AEB # mailq | grep MAILER-DAE | cut -c1-11 | for i in read - ; do postsuper -d $i; done [snip] postsuper: D34B62AA563: removed postsuper: Deleted: 15 messages Que la documentation de postsuper dis qu'il n'accepte qu'un seul argument à l'option -d, et que l'argument suivant est .. un répertoire postsuper [-psv] [-c config_dir] [-d queue_id] [-h queue_id] [-H queue_id] [-r queue_id] [directory ...]
Heu, tu sais pas lire ;) Il accepte un numéro de queue.
Je pense que le mieux est d'essayer de passer par stdout, il est possible que % mailq | grep MAILER-DAE | cut -c1-11 | postsuper -d - fonctionne
Non, ça, ça fonctionnerait si on pouvait avoir postsuper -d Q1 -d Q2 -d Q3, etc. xargs est censé faire arg1 arg2 arg3 -> xargs postsuper -d : postsuper -d arg1 postsuper -d arg2 postsuper -d arg3 Or, ce n'est à priori pas ce qui se passe... This manual page documents the GNU version of xargs. xargs reads items from the standard input, delimited by blanks (which can be protected with double or single quotes or a backslash) or newlines, and executes the command (default is /bin/echo) one or more times with any initial-arguments followed by items read from standard input. Blank lines on the standard input are ignored. Non non, ça m'échappe définitivement. Arnaud. -- Perso: http://launay.org/blog/ Hébergement: http://www.nocworld.com/
On Tue 23 October, Arnaud Launay wrote:
Le Tue, Oct 23, 2007 at 06:19:41PM +0200, Bruno Bonfils a écrit:
# mailq | grep MAILER-DAE | cut -c1-11 | xargs postsuper -d postsuper: fatal: invalid directory name: 3089A2A9AEB # mailq | grep MAILER-DAE | cut -c1-11 | for i in read - ; do postsuper -d $i; done [snip] postsuper: D34B62AA563: removed postsuper: Deleted: 15 messages Que la documentation de postsuper dis qu'il n'accepte qu'un seul argument à l'option -d, et que l'argument suivant est .. un répertoire postsuper [-psv] [-c config_dir] [-d queue_id] [-h queue_id] [-H queue_id] [-r queue_id] [directory ...]
Heu, tu sais pas lire ;) Il accepte un numéro de queue.
C'est toi qui n'a rien compris a ce que je viens de dire, mais c'est pas grave, j'ai l'habitude.
Je pense que le mieux est d'essayer de passer par stdout, il est possible que % mailq | grep MAILER-DAE | cut -c1-11 | postsuper -d - fonctionne
Non, ça, ça fonctionnerait si on pouvait avoir postsuper -d Q1 -d Q2 -d Q3, etc.
xargs est censé faire arg1 arg2 arg3 -> xargs postsuper -d : postsuper -d arg1 postsuper -d arg2 postsuper -d arg3
Non, il n'est pas censé faire ca. Si tu veux ca, regarde la solution d'Emmanuel. % echo "a\nb" | xargs echo echo -n echo -n a b -- http://asyd.net/home/ - Home Page http://guses.org/home/ - French Speaking (Open)Solaris User Group
Le Tue, Oct 23, 2007 at 06:45:04PM +0200, Bruno Bonfils a écrit:
Que la documentation de postsuper dis qu'il n'accepte qu'un seul argument à l'option -d, et que l'argument suivant est .. un répertoire C'est toi qui n'a rien compris a ce que je viens de dire, mais c'est pas grave, j'ai l'habitude.
C'est mon côté blonde. Il accepte un répertoire optionnel.
% echo "a\nb" | xargs echo echo -n echo -n a b
Rurrumf. Ce qui veut dire que je me sers de xargs de traviole depuis des années... *soupir* *me coucherai moins con* Arnaud.
participants (3)
-
Arnaud Launay
-
Bruno Bonfils
-
Emmanuel Bouthenot