diff --git a/dictionaries/library_asyncio_subprocess.txt b/dictionaries/library_asyncio_subprocess.txt new file mode 100644 index 0000000000..dab11958ce --- /dev/null +++ b/dictionaries/library_asyncio_subprocess.txt @@ -0,0 +1,2 @@ +redireccionados +Process \ No newline at end of file diff --git a/library/asyncio-subprocess.po b/library/asyncio-subprocess.po index d7f13c9241..72a738063b 100644 --- a/library/asyncio-subprocess.po +++ b/library/asyncio-subprocess.po @@ -6,45 +6,53 @@ # Check https://github.com/python/python-docs-es/blob/3.8/TRANSLATORS to # get the list of volunteers # -#, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.8\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-05-05 12:54+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"PO-Revision-Date: 2020-10-30 20:40-0500\n" "Language-Team: python-doc-es\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.8.0\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"Last-Translator: Adolfo Hristo David Roque Gámez \n" +"Language: es\n" +"X-Generator: Poedit 2.4\n" #: ../Doc/library/asyncio-subprocess.rst:7 msgid "Subprocesses" -msgstr "" +msgstr "Sub-procesos" #: ../Doc/library/asyncio-subprocess.rst:9 msgid "" "**Source code:** :source:`Lib/asyncio/subprocess.py`, :source:`Lib/asyncio/" "base_subprocess.py`" msgstr "" +"**Código fuente:** :source:`Lib/asyncio/subprocess.py`, :source:`Lib/asyncio/" +"base_subprocess.py`" #: ../Doc/library/asyncio-subprocess.rst:14 msgid "" "This section describes high-level async/await asyncio APIs to create and " "manage subprocesses." msgstr "" +"Esta sección describe APIs de alto nivel de *async/await* de asyncio para " +"crear y gestionar sub-procesos." #: ../Doc/library/asyncio-subprocess.rst:19 msgid "" "Here's an example of how asyncio can run a shell command and obtain its " "result::" msgstr "" +"Aquí podemos encontrar un ejemplo de cómo asyncio puede ejecutar un comando " +"de *shell* y obtener su resultado::" #: ../Doc/library/asyncio-subprocess.rst:40 msgid "will print::" -msgstr "" +msgstr "mostrará en pantalla:" #: ../Doc/library/asyncio-subprocess.rst:46 msgid "" @@ -53,18 +61,23 @@ msgid "" "monitor multiple subprocesses in parallel. It is indeed trivial to modify " "the above example to run several commands simultaneously::" msgstr "" +"Ya que todos las funciones de sub-procesos de asyncio son asíncronas y " +"asyncio proporciona herramientas para trabajar con tales funciones, es fácil " +"ejecutar y monitorear múltiples subprocesos en paralelo. De hecho es " +"trivial modificar los ejemplos de arriba para ejecutar varios comandos " +"simultáneamente::" #: ../Doc/library/asyncio-subprocess.rst:58 msgid "See also the `Examples`_ subsection." -msgstr "" +msgstr "Véase también la subsección `Examples`_." #: ../Doc/library/asyncio-subprocess.rst:62 msgid "Creating Subprocesses" -msgstr "" +msgstr "Creando sub-procesos" #: ../Doc/library/asyncio-subprocess.rst:68 msgid "Create a subprocess." -msgstr "" +msgstr "Crea un sub-proceso." #: ../Doc/library/asyncio-subprocess.rst:70 #: ../Doc/library/asyncio-subprocess.rst:89 @@ -73,30 +86,37 @@ msgid "" "wrappers for :attr:`Process.stdout` and :attr:`Process.stderr` (if :attr:" "`subprocess.PIPE` is passed to *stdout* and *stderr* arguments)." msgstr "" +"El argumento *limit* establece el límite del buffer para los envoltorios :" +"class:`StreamReader` para :attr:`Process.stdout` y :attr:`Process.stderr` " +"(si se pasa :attr:`subprocess.PIPE` a los argumentos *stdout* y *stderr*)." #: ../Doc/library/asyncio-subprocess.rst:74 #: ../Doc/library/asyncio-subprocess.rst:93 msgid "Return a :class:`~asyncio.subprocess.Process` instance." -msgstr "" +msgstr "Retorna una instancia de :class:`~asyncio.subprocess.Process`." #: ../Doc/library/asyncio-subprocess.rst:76 msgid "" "See the documentation of :meth:`loop.subprocess_exec` for other parameters." msgstr "" +"Véase la documentación de :meth:`loop.subprocess_exec` para los otros " +"parámetros." #: ../Doc/library/asyncio-subprocess.rst:81 #: ../Doc/library/asyncio-subprocess.rst:109 msgid "The *loop* parameter." -msgstr "" +msgstr "El parámetro *loop*." #: ../Doc/library/asyncio-subprocess.rst:87 msgid "Run the *cmd* shell command." -msgstr "" +msgstr "Ejecuta el comando de shell *cmd*." #: ../Doc/library/asyncio-subprocess.rst:95 msgid "" "See the documentation of :meth:`loop.subprocess_shell` for other parameters." msgstr "" +"Véase la documentación de :meth:`loop.subprocess_shell` para los otros " +"parámetros." #: ../Doc/library/asyncio-subprocess.rst:100 msgid "" @@ -107,6 +127,13 @@ msgid "" "escape whitespace and special shell characters in strings that are going to " "be used to construct shell commands." msgstr "" +"Es la responsabilidad de la aplicación asegurarse que todos los espacios en " +"blanco y caracteres especiales estén citados apropiadamente para evitar " +"vulnerabilidades de `inyección de instrucciones `_. La " +"función :func:`shlex.quote` puede ser usada para escapar caracteres en " +"blanco y caracteres especiales de *shell* en cadenas de caracteres a ser " +"usadas para construir comandos de *shell*." #: ../Doc/library/asyncio-subprocess.rst:113 msgid "" @@ -115,6 +142,10 @@ msgid "" "`ProactorEventLoop` is used. See :ref:`Subprocess Support on Windows " "` for details." msgstr "" +"La implementación del bucle de eventos de asyncio por defecto en **Windows** " +"no admite sub-procesos. Los sub-procesos están disponibles para Windows si " +"un :class:`ProactorEventLoop` es usado. Véase :ref:`Soporte de Sub-procesos " +"en Windows ` para los detalles." #: ../Doc/library/asyncio-subprocess.rst:121 msgid "" @@ -124,14 +155,20 @@ msgid "" "`Subprocess Transports ` and :ref:`Subprocess " "Protocols `." msgstr "" +"asyncio también tiene las siguientes APIs de *bajo nivel* para trabajar con " +"sub-procesos: :meth:`loop.subprocess_exec`, :meth:`loop.subprocess_shell`, :" +"meth:`loop.connect_read_pipe`, :meth:`loop.connect_write_pipe`, así como " +"también los :ref:`Sub-procesos de Transportes ` y los :ref:`Sub-procesos de Protocolos `." #: ../Doc/library/asyncio-subprocess.rst:129 msgid "Constants" -msgstr "" +msgstr "Constantes" #: ../Doc/library/asyncio-subprocess.rst:133 msgid "Can be passed to the *stdin*, *stdout* or *stderr* parameters." -msgstr "" +msgstr "Se le puede pasar a los parámetros *stding*, *stdout* o *stderr*." #: ../Doc/library/asyncio-subprocess.rst:135 msgid "" @@ -139,6 +176,9 @@ msgid "" "subprocess.Process.stdin>` attribute will point to a :class:`StreamWriter` " "instance." msgstr "" +"Si se le pasa *PIPE* al argumento *stdin*, el atributo :attr:`Process.stdin " +"` apuntará a la instancia :class:" +"`StreamWriter`." #: ../Doc/library/asyncio-subprocess.rst:139 msgid "" @@ -147,12 +187,18 @@ msgid "" "` attributes will point to :class:" "`StreamReader` instances." msgstr "" +"Si se pasa *PIPE* a los argumentos *stdout* o *stderr*, los atributos :attr:" +"`Process.stdout ` y :attr:`Process.stderr " +"` apuntarán a las instancias :class:" +"`StreamReader`." #: ../Doc/library/asyncio-subprocess.rst:146 msgid "" "Special value that can be used as the *stderr* argument and indicates that " "standard error should be redirected into standard output." msgstr "" +"Un valor especial que puede ser usado como el argumento de *stderr* e indica " +"que los errores estándar deben ser redireccionados en la salida estándar." #: ../Doc/library/asyncio-subprocess.rst:151 msgid "" @@ -160,10 +206,14 @@ msgid "" "to process creation functions. It indicates that the special file :data:`os." "devnull` will be used for the corresponding subprocess stream." msgstr "" +"Un valor especial que puede ser usado como el argumento de *stdin*, " +"*stdout*, *stderr* para procesar funciones de creación. Indica que el " +"archivo especial :data:`os.devnull` será usado para la correspondiente " +"transmisión del sub-proceso." #: ../Doc/library/asyncio-subprocess.rst:157 msgid "Interacting with Subprocesses" -msgstr "" +msgstr "Interactuando con Subprocesos" #: ../Doc/library/asyncio-subprocess.rst:159 msgid "" @@ -172,24 +222,34 @@ msgid "" "level wrapper that allows communicating with subprocesses and watching for " "their completion." msgstr "" +"Las dos funciones :func:`create_subprocess_exec` y :func:" +"`create_subprocess_shell` retornan instancias de la clase *Process*. " +"*Process* es un envoltorio de alto nivel que permite comunicarse con los " +"subprocesos y estar atento a sus términos." #: ../Doc/library/asyncio-subprocess.rst:166 msgid "" "An object that wraps OS processes created by the :func:" "`create_subprocess_exec` and :func:`create_subprocess_shell` functions." msgstr "" +"Un objeto que envuelve procesos del SO creados por las funciones :func:" +"`create_subprocess_exec` y :func:`create_subprocess_shell`." #: ../Doc/library/asyncio-subprocess.rst:170 msgid "" "This class is designed to have a similar API to the :class:`subprocess." "Popen` class, but there are some notable differences:" msgstr "" +"Esta clase está diseñada para tener un API similar a la clase :class:" +"`subprocess.Popen`, pero hay algunas diferencias notables:" #: ../Doc/library/asyncio-subprocess.rst:174 msgid "" "unlike Popen, Process instances do not have an equivalent to the :meth:" "`~subprocess.Popen.poll` method;" msgstr "" +"a diferencia de Popen, las instancias de Process no tiene un equivalente del " +"método :meth:`~subprocess.Popen.poll`;" #: ../Doc/library/asyncio-subprocess.rst:177 msgid "" @@ -197,6 +257,9 @@ msgid "" "subprocess.Process.wait` methods don't have a *timeout* parameter: use the :" "func:`wait_for` function;" msgstr "" +"los métodos :meth:`~asyncio.subprocess.Process.communicate` y :meth:" +"`~asyncio.subprocess.Process.wait` no tienen un parámetro *timeout*: use la " +"función :func:`wait_for`;" #: ../Doc/library/asyncio-subprocess.rst:181 msgid "" @@ -204,28 +267,35 @@ msgid "" "asynchronous, whereas :meth:`subprocess.Popen.wait` method is implemented as " "a blocking busy loop;" msgstr "" +"el método :meth:`Process.wait() ` es " +"asíncrono, mientras que el método :meth:`subprocess.Popen.wait` es " +"implementado como un bucle de espera activa;" #: ../Doc/library/asyncio-subprocess.rst:185 msgid "the *universal_newlines* parameter is not supported." -msgstr "" +msgstr "el parámetro *universal_newlines* no es compatible." #: ../Doc/library/asyncio-subprocess.rst:187 msgid "This class is :ref:`not thread safe `." msgstr "" +"Esta clase no es segura para subprocesos (:ref:`not thread safe `)." #: ../Doc/library/asyncio-subprocess.rst:189 msgid "" "See also the :ref:`Subprocess and Threads ` " "section." msgstr "" +"Véase también la sección :ref:`Subprocesos e Hilos `." #: ../Doc/library/asyncio-subprocess.rst:194 msgid "Wait for the child process to terminate." -msgstr "" +msgstr "Espera a que el proceso hijo termine." #: ../Doc/library/asyncio-subprocess.rst:196 msgid "Set and return the :attr:`returncode` attribute." -msgstr "" +msgstr "Define y retorna el atributo :attr:`returncode`." #: ../Doc/library/asyncio-subprocess.rst:200 msgid "" @@ -234,32 +304,38 @@ msgid "" "pipe buffer to accept more data. Use the :meth:`communicate` method when " "using pipes to avoid this condition." msgstr "" +"Este método puede bloquearse cuando usa ``stdout=PIPE`` o ``stderr=PIPE`` y " +"el proceso hijo genera tanta salida que se bloquea esperando a que la " +"tubería de búfer del SO acepte más datos. Use el método :meth:`communicate` " +"cuando use tuberías para evitar esta condición." #: ../Doc/library/asyncio-subprocess.rst:208 msgid "Interact with process:" -msgstr "" +msgstr "Interactuar con el proceso:" #: ../Doc/library/asyncio-subprocess.rst:210 msgid "send data to *stdin* (if *input* is not ``None``);" -msgstr "" +msgstr "envía datos a *stdin* (si *input* no es ``None``);" #: ../Doc/library/asyncio-subprocess.rst:211 msgid "read data from *stdout* and *stderr*, until EOF is reached;" -msgstr "" +msgstr "lee datos desde *stdout* y *stderr*, hasta que el llegue al EOF;" #: ../Doc/library/asyncio-subprocess.rst:212 msgid "wait for process to terminate." -msgstr "" +msgstr "espera a que el proceso termine." #: ../Doc/library/asyncio-subprocess.rst:214 msgid "" "The optional *input* argument is the data (:class:`bytes` object) that will " "be sent to the child process." msgstr "" +"El argumento opcional *input* son los datos (objetos :class:`bytes`) que " +"serán enviados a los procesos hijos." #: ../Doc/library/asyncio-subprocess.rst:217 msgid "Return a tuple ``(stdout_data, stderr_data)``." -msgstr "" +msgstr "Retorna una tupla ``(stdout_data, stderr_data)``." #: ../Doc/library/asyncio-subprocess.rst:219 msgid "" @@ -268,6 +344,10 @@ msgid "" "condition occurs when the process exits before all data are written into " "*stdin*." msgstr "" +"Si se levanta la excepción :exc:`BrokenPipeError` o :exc:" +"`ConnectionResetError` cuando se escribe *input* en *stdin*, la excepción es " +"ignorada. Esta condición ocurre cuando el proceso finaliza antes de que " +"todos los datos sean escritos en *stdin*." #: ../Doc/library/asyncio-subprocess.rst:224 msgid "" @@ -276,16 +356,22 @@ msgid "" "``None`` in the result tuple, the process has to be created with " "``stdout=PIPE`` and/or ``stderr=PIPE`` arguments." msgstr "" +"Si se desea enviar datos al *stdin* del proceso, el proceso necesita ser " +"creado con ``stdin=PIPE``. De manera similar, para obtener cualquier cosa " +"excepto ``None`` en la tupla del resultado, el proceso tiene que ser creado " +"con los argumentos ``stdout=PIPE`` y/o ``stderr=PIPE``." #: ../Doc/library/asyncio-subprocess.rst:230 msgid "" "Note, that the data read is buffered in memory, so do not use this method if " "the data size is large or unlimited." msgstr "" +"Tenga en cuenta que los datos leídos son almacenados en memoria, por lo que " +"no utilice este método si el tamaño de los datos es más grande o ilimitado." #: ../Doc/library/asyncio-subprocess.rst:235 msgid "Sends the signal *signal* to the child process." -msgstr "" +msgstr "Envíe la señal *signal* al proceso hijo." #: ../Doc/library/asyncio-subprocess.rst:239 msgid "" @@ -293,53 +379,67 @@ msgid "" "``CTRL_C_EVENT`` and ``CTRL_BREAK_EVENT`` can be sent to processes started " "with a *creationflags* parameter which includes ``CREATE_NEW_PROCESS_GROUP``." msgstr "" +"En Windows, :py:data:`SIGTERM` es un alias para :meth:`terminate`. Se puede " +"enviar ``CTRL_C_EVENT`` y ``CTRL_BREAK_EVENT`` a procesos iniciados con un " +"parámetro *creationflags* que incluye ``CREATE_NEW_PROCESS_GROUP``." #: ../Doc/library/asyncio-subprocess.rst:246 msgid "Stop the child process." -msgstr "" +msgstr "Para al proceso hijo." #: ../Doc/library/asyncio-subprocess.rst:248 msgid "" "On POSIX systems this method sends :py:data:`signal.SIGTERM` to the child " "process." msgstr "" +"En sistemas POSIX este método envía :py:data:`signal.SIGNTERM` al proceso " +"hijo." #: ../Doc/library/asyncio-subprocess.rst:251 msgid "" "On Windows the Win32 API function :c:func:`TerminateProcess` is called to " "stop the child process." msgstr "" +"En Windows, la función de la API de Win32 :c:func:`TerminateProcess` es " +"llamado para parar a los procesos hijos." #: ../Doc/library/asyncio-subprocess.rst:256 msgid "Kill the child." -msgstr "" +msgstr "Termina el proceso hijo." #: ../Doc/library/asyncio-subprocess.rst:258 msgid "" "On POSIX systems this method sends :py:data:`SIGKILL` to the child process." msgstr "" +"En sistemas POSIX, este método envía :py:data:`SIGKILL` al proceso hijo." #: ../Doc/library/asyncio-subprocess.rst:261 msgid "On Windows this method is an alias for :meth:`terminate`." -msgstr "" +msgstr "En Windows este método es un alias para :meth:`terminate`." #: ../Doc/library/asyncio-subprocess.rst:265 msgid "" "Standard input stream (:class:`StreamWriter`) or ``None`` if the process was " "created with ``stdin=None``." msgstr "" +"Flujo de entrada estándar (:class:`StreamWriter`) o ``None`` si el proceso " +"fue creado con ``stdin=None``." #: ../Doc/library/asyncio-subprocess.rst:270 msgid "" "Standard output stream (:class:`StreamReader`) or ``None`` if the process " "was created with ``stdout=None``." msgstr "" +"Flujo de salida estándar (:class:`SreamReader`) o ``None`` si el proceso fue " +"creado con ``stdout=None``." #: ../Doc/library/asyncio-subprocess.rst:275 msgid "" "Standard error stream (:class:`StreamReader`) or ``None`` if the process was " "created with ``stderr=None``." msgstr "" +"Flujo de salida estándar (:class:`StreamReader`) o ``None`` si el proceso " +"fue creado con ``stderr=None``." #: ../Doc/library/asyncio-subprocess.rst:280 msgid "" @@ -348,80 +448,103 @@ msgid "" "process.stderr.read `. This avoids deadlocks due to streams pausing " "reading or writing and blocking the child process." msgstr "" +"Utilice el método :meth:`communicate` en vez de :attr:`process.stdin.write() " +"`, :attr:`await process.stdout.read() ` o :attr:`await " +"process.stderr.read `. Esto evita bloqueos debido a que los flujos " +"pausan la lectura o escritura y bloqueando al proceso hijo." #: ../Doc/library/asyncio-subprocess.rst:289 msgid "Process identification number (PID)." -msgstr "" +msgstr "Número de identificación del Proceso (PID por sus siglas en inglés)." #: ../Doc/library/asyncio-subprocess.rst:291 msgid "" "Note that for processes created by the :func:`create_subprocess_shell` " "function, this attribute is the PID of the spawned shell." msgstr "" +"Tenga en cuenta que para procesos creados por la función :func:`create­" +"_subprocess_shell`, este atributo es el PID del shell generado." #: ../Doc/library/asyncio-subprocess.rst:296 msgid "Return code of the process when it exits." -msgstr "" +msgstr "Código de retorno del proceso cuando finaliza." #: ../Doc/library/asyncio-subprocess.rst:298 msgid "A ``None`` value indicates that the process has not terminated yet." -msgstr "" +msgstr "Un valor ``None`` indica que el proceso todavía no ha finalizado." #: ../Doc/library/asyncio-subprocess.rst:300 msgid "" "A negative value ``-N`` indicates that the child was terminated by signal " "``N`` (POSIX only)." msgstr "" +"Un valor negativo ``-N`` indica que el hijo ha finalizado por la señal ``N`` " +"(sólo para POSIX)." #: ../Doc/library/asyncio-subprocess.rst:307 msgid "Subprocess and Threads" -msgstr "" +msgstr "Subprocesos y Hilos" #: ../Doc/library/asyncio-subprocess.rst:309 msgid "" "Standard asyncio event loop supports running subprocesses from different " "threads by default." msgstr "" +"Por defecto el bucle de eventos de asyncio estándar permite correr " +"subprocesos desde hilos diferentes." #: ../Doc/library/asyncio-subprocess.rst:312 msgid "" "On Windows subprocesses are provided by :class:`ProactorEventLoop` only " "(default), :class:`SelectorEventLoop` has no subprocess support." msgstr "" +"En Windows, sólo :class:`ProactorEventLoop` proporciona subprocesos (por " +"defecto), :class:`SelectorEventLoop` no es compatible con subprocesos." #: ../Doc/library/asyncio-subprocess.rst:315 msgid "" "On UNIX *child watchers* are used for subprocess finish waiting, see :ref:" "`asyncio-watchers` for more info." msgstr "" +"En UNIX, los *observadores de hijos* son usados para la espera de " +"finalización de subprocesos, véase :ref:`asyncio-watchers` para más " +"información." #: ../Doc/library/asyncio-subprocess.rst:321 msgid "" "UNIX switched to use :class:`ThreadedChildWatcher` for spawning subprocesses " "from different threads without any limitation." msgstr "" +"UNIX cambió para usar :class:`ThreadedChildWatcher` para generar subprocesos " +"de hilos diferentes sin ninguna limitación." #: ../Doc/library/asyncio-subprocess.rst:324 msgid "" "Spawning a subprocess with *inactive* current child watcher raises :exc:" "`RuntimeError`." msgstr "" +"Crear un subproceso con el observador del hijo *inactivo* lanza un :exc:" +"`RuntimeError`." #: ../Doc/library/asyncio-subprocess.rst:327 msgid "" "Note that alternative event loop implementations might have own limitations; " "please refer to their documentation." msgstr "" +"Tenga en cuenta que implementaciones alternativas del bucle de eventos " +"pueden tener limitaciones propias; por favor consulte su documentación." #: ../Doc/library/asyncio-subprocess.rst:332 msgid "" "The :ref:`Concurrency and multithreading in asyncio ` section." msgstr "" +"La sección :ref:`Concurrencia y multihilos en asyncio `." #: ../Doc/library/asyncio-subprocess.rst:337 msgid "Examples" -msgstr "" +msgstr "Ejemplos" #: ../Doc/library/asyncio-subprocess.rst:339 msgid "" @@ -429,14 +552,20 @@ msgid "" "subprocess and the :class:`StreamReader` class to read from its standard " "output." msgstr "" +"Un ejemplo usando la clase :class:`~asyncio.subprocess.Process` para " +"controlar un subproceso y la clase :class:`StreamReader` para leer de su " +"salida estándar." #: ../Doc/library/asyncio-subprocess.rst:345 msgid "" "The subprocess is created by the :func:`create_subprocess_exec` function::" msgstr "" +"El subproceso es creado por la función :func:`create_subprocess_exec`::" #: ../Doc/library/asyncio-subprocess.rst:372 msgid "" "See also the :ref:`same example ` written " "using low-level APIs." msgstr "" +"Véase también los :ref:`ejemplos de prueba " +"` escritos usando APIs de bajo nivel."