[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: bash: impossible de régler le groupe de processus du terminal (20286): Ioctl() inapproprié pour un périphérique



G2PC, au 2019-08-16 :
> .bashrc
> alias mediawiki1='/usr/bin/php
> /var/www/wiki.domaine.fr/maintenance/deleteOldRevisions.php --delete'
>
>
> crontab -e
> 01 10 * * * bash -ic "mediawiki1 >> /var/log/cron-dropbox.log 2>&1"

Bonjour,

D'après le manuel de bash(1), section ALIASES, les alias ne sont
pas évalués quand le shell n'est pas interactif, à moins
d'utiliser l'option "expand_aliases" en tête du script, via
"shopt".  Je suppose que c'est ce qui vous a motivé à lancer le
script Bash avec l'option "-i".  Sauf que le « pseudo terminal »
fourni par l'environnement de cron ne fournit aucune manière
d'interagir, d'où l'erreur :

> bash: impossible de régler le groupe de processus du terminal (20286):
> Ioctl() inapproprié pour un périphérique
> bash: pas de contrôle de tâche dans ce shell

Je pense que vous vous en sortirez mieux simplement à coup de :

	01 10 * * * /usr/bin/php /var/www/wiki.domaine.fr/maintenance/deleteOldRevisions.php --delete >> /var/log/cron-dropbox.log 2>&1

Ou alors, si comme moi vous n'aimez par les longues lignes, en
lançant un script exécutable /root/bin/mediawiki, par exemple :

	#!/bin/bash
	exec /usr/bin/php \
		/var/www/wiki.domaine.fr/maintenance/deleteOldRevisions.php \
		--delete >> /var/log/cron-dropbox.log 2>&1

Qui serait appelé comme ceci :

	01 10 * * * /root/bin/mediawiki

Ou bien alors comme cela si le fichier n'est pas exécutable :

	01 10 * * * /bin/bash /root/bin/mediawiki

Amicalement,
-- 
Étienne Mollier <etienne.mollier@mailoo.org>
               5ab1 4edf 63bb ccff 8b54 2fa9 59da 56fe fff3 882d


Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: