Buenas.

Jugando image imagick he encontrado este script en bash para generar iconos
de pixeles aleatorios:

mx=8;my=8;head -c "$((3*mx*my))" /dev/urandom | convert -depth 8 -size
"${mx}x${my}" RGB:- /tmp/random.png


Y por aprender quería pasarlo a Python, pero no he sido capaz.

#!/usr/bin/python3
import subprocess

result = subprocess.run(['head', '-c {}'.format(3 * size * size),
'/dev/urandom'], stdout=subprocess.PIPE)print('{}'.format(result))
result = subprocess.run(['convert', '-depth 8',
'-size{}x{}'.format(size, size), 'RGB:-', '/tmp/random.png'],
stdin=result.stdout, stdout=subprocess.PIPE)


Falla y da un error de que:
convert-im6.q16: unrecognized option `-size8x8' @
error/convert.c/ConvertImageCommand/2969.

Algo estoy haciendo mal, pero no se el que...no se si sera que el stdout
del primer proceso es bytes...

Por cierto he puesto la pregunta en stackoverflow por si alguien la quiere
contestar ahí y le doy un voto.

https://stackoverflow.com/questions/50682514/when-python3-chain-two-subprocess-run-such-as-bash-pipe-get-error-attributeer

Saludos.
_______________________________________________
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es

Responder a