No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Comunicación entre procesos: Qué son y cómo se utilizan los flujos estándar

8/23
Recursos

Aportes 335

Preguntas 58

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Me gustaría compartir el contenido del archivo dump1.sql que me tomé el tiempo de escribir para practicar:

INSERT INTO actores (nombre, apellido) VALUES
('Sam', 'Worthington'),
('Zoe', 'Saldana'),
('Sigourney', 'Weaver'),
('Leonardo', 'Di Caprio'),
('Kate', 'Winslet'),
('Billy', 'Zane'),
('Mark', 'Hamill'),
('Harrison', 'Ford'),
('Carrie', 'Fisher'),
('Sam', 'Neill'),
('Laura', 'Dern'),
('Jeff', 'Goldblum'),
('Daniel', 'Radcliffe'),
('Emma', 'Watson (sho te amo)'),
('Rupert', 'Grint'),
('Shia', 'LaBeouf'),
('Rosie', 'Huntington-Whitley'),
('Matthew','Broderick'),
('James','Earl Jones'),
('Jeremy', 'Irons'),
('Jhonny', 'Depp'),
('Helena','Bonham Carter'),
('Mia', 'Wasikouska'),
('Albert', 'Brooks'),
('Ellen', 'DeGeneres'),
('Alexander', 'Gould'),
('Tom', 'Hanks'),
('Tim', 'Allen'),
('Mark', 'Ruffalo')
;

Espero les sea útil a muchos!

Tengo un par de acotaciones sobre el curso de o que he evidenciado en estos videos:

  1. En los ejemplos @mchojrin utiliza archivos tipo .sql los cuales no nos enseña si debemos configurar algún paquete sudo o algo por el estilo para que nos funcione en nuestras PCs.

  2. No es justo que partan del hecho que ya nosotros debemos saber todo lo que el profe explica, considero que falta entrar un poquito en detalle en cuanto a la funcionalidad que tiene cada comando.

  3. Sería de gran utilidad que nos facilitaran los archivos de pruebas, para que podamos realizar los ejercicios a la par con la explicación del tutor.

Pueden ver este Tutorial para reforzar la clase

Estaría muy bueno que pusieran los archivos para practicar.

aqui podemos ver un poco mas claro el objetivo de la clase

https://www.youtube.com/watch?v=mmI0ZYwODqA

  • operador | (pipe):
    command_1 | command_2
    Manda el STDOUT de command_1 al STDIN de command_2

  • operador >
    command_1 > FILE
    Manda el STDOUT de command_1 al inicio de FILE. Si FILE no existe lo crea, si existe lo sobreescribe.

  • operador >>
    command_1 >> FILE
    Manda el STDOUT de command_1 al inicio de FILE. Si FILE no existe lo crea, si existe lo concatena al final.

  • operador <
    command_1 < FILE
    Manda al STDIN de command_1 el contenido de FILE.

Por qué el profesor no deja los archivos para descargar aquí? Creo que sería bueno ir haciendo las mismas prácticas que él hace. Lo digo en cuanto al ejercicio del archivo de la base de datos donde ejecuta el comando 'mysql' junto con otras banderas... sería una buena práctica

Si quieren ejecutar 2 comandos en la misma linea deben usar el “;” ejemplo:
primer comando ; segundo comando

comando < archivo :ejecutar archivo descrito
comando > archivo :la salida se guarde en un archivo
comando >> archivo :agregar el resultado al archivo existente
ls -l >> archivo.txt
ls -l | more :el pipe encadena el resultado al siguiente comando
wc :Cuenta cuantas lineas tiene el archivo
cat archivo.txt | wc -l

  • Cuenta cuantas lineas tiene el archivo + cuantas palabras hay + cuantos caracteres.

wc -c bytes
wc -m caracteres
wc -l lineas
wc -L maximo display
wc -w palabras

💡 Un pro-tip que he aprendido con mi experiencia utilizando Linux es que no es necesario hacer un cat a un pipe. Esto tiene varios problemas, aunque los principales es que es redundante y es dispendioso en cuestión de recursos. Cuando hacemos cat dump1.sql | wc -l estamos creando un subproceso para cat que gastará memoria (de acuerdo al tamaño del archivo).

Lo que les recomendaría que hagan es una redirección de entrada con el archivo que necesitan para de esta forma solo crear el proceso para el comando que realmente necesitan (en este caso wc), por ejemplo:

wc -l < dump1.sql

Espero me dejen el Like ❤️ si les sirvio!

Mis aportes 😄

Comunicación entre procesos: Qué son los flujos estándar

<h3>Procesamiento de datos</h3>

El procesamiento de datos es un proceso que recibe datos de un canal de entrada (usualmente un teclado), los procesa, y por ultimo nos envia la información por un canal de salida como el monitor.

<h3>Flujos estándar</h3>

Son los canales por donde ingresa y sale la información. Y exiten tres canales estándares:

  • Entrada
  • Salida
  • Error
<h3>Procesamiento de datos por defecto</h3>
<h3>Procesamiento de datos: Redirección de entrada</h3>

Aveces necesitamos que los datos que vamos a procesar se tomen directamente de la información de un archivo ya hecho. Para esto usamos un método que se llama redireccionamiento de datos y se usa el signo <.

  • mysql -h 123.0.0.1 -u root -p1234 < [archivo sql] : Lo que sucede aquí es que nos estamos conectando a un servidor mysql y después del signo < especificamos el archivo local (previamente hecho) que queremos ejecutar en el servidor al que nos conectamos.

    Esto es útil especialmente si tenemos por ejemplo un archivo de base de datos grande y tenemos que ejecutarlo varias veces. De ésta manera no tendrémos que escribir todo su contenido una y otra vez en consola.

<h3>Procesamiento de datos: Redirección de salida</h3>

A veces necesitamos cambiar el canal de salida de los datos que procesamos y que se guarde en un archivo en vez de mostrarse en pantalla. Se usa el signo >.

En pocas palabras, lo que queremos hacer aquí es guardar el resultado de algún comando o proceso en un archivo:

  • Creamos un archivo nuevo (o utilizamos uno ya hecho)
  • Comprobamos su contenido

En este caso no hay nada ya que es un archivo recién creado. Pero debemos ser muy cuidadosos ya que ésta redirección lo que hará es eliminar todo el contenido existente en el archivo y guardar lo que le hayamos redireccionado.

  • Colocamos el comando que queramos ejecutar, seguido por un signo de mayor >, y luego el archivo al que queramos enviar el contenido del comando. Ej: date > [archivo]
  • Comprobamos que el contenido del archivo sea la respuesta del comando

Y listo 😄

Pero quizás te estés preguntando cómo puedo enviar información a un archivo sin eliminar su contenido previamente guardado en él. Para esto usamos el doble signo de mayor >>. Ejemplo: echo ‘mensaje’ >> [archivo]

<h3>Procesamiento de datos: Pipes</h3>

Existen casos donde tenemos que concatenar varios procesos, es decír, que el fin de un proceso sea el comienzo de uno nuevo y sucesivamente. Podría hacerse manual pero para prácticidad existen los pipes.

Para entender los pipes veamos lo siguiente:

  • Quiero crear un nuevo archivo llamado new.txt al que le quiero redireccionar el comando echo con un mensaje y a la vez hacer un cat para ver su contenido automaticamente.

Existen otros comandos que son bastante utiles al momento de concatenar para ahorrar tiempo y automatizar.

  • [comando] [archivo] | more : Muestra un resultado completo del comando que le pasemos.

    • Con enter muestra una linea más del resultado.
    • Con barra espaciadora muestra otra pantalla o sección(si la hay).
    • Ejemplo: ls -al | more
  • [comando] [archivo] | wc : Muestra cuantas lineas, palabras, y caracteres (en ese orden) hay:

    También recibe tres parámetros para obtener las lineas, palabras, o carácteres en solitario.

Lo único que no me quedo claro fue al momento de usar el servidor de (mysql), esa parte no la entendí bien, me hubiese gustado que lo usara con otro archivo para ver si entendia.

no me quedo claro la explicación de los pipes… aqui comparto una complementaria que a mi me ayudo:

https://www.youtube.com/watch?v=VSH1XpWN1us

Los flujos estándar son:

  1. Entrada
  2. Salida
  3. Error: (Hay que diferenciarlos, ya que muchas veces queremos que los errores salgan por otro canal que la salida de resultado).

Estos canales están conectados a los periféricos comunes:
La entrada es el teclado
También puede existir el caso:
Cuando queremos que los datos que van a ingresar de un proceso, salgan de un archivo ya armado. para utilizar estos datos. Haremos uso de un proceso llamado re dirección

La salida la pantalla
También puede existir el caso:

  • Se redirecciona la salida de la terminal a un archivo para que posteriormente pueda ser revisada.

  • También podemos agregar cosas al archivo que ya se tenía.

Quizás con este ejemplo puedas entender el funcionamiento de Pipes ( | ):

ls -a > archivo1.txt | ls -l > archivo2.txt | date >> archivo3.txt | wc -l >> archivo1.txt

hace mucho tiempo que estaba utilizando la terminal como podia y lo unico que me doy cuenta con este curso es que no estaba utilizando ni un 1% de lo que tiene para ofrecer. Excelentes las clases!

Los pipes son sagrados cuando uno trabaja en la parte del backend que necesita cosas del lado del sistema operativo, no tienes que empezar a programar y llamar librerías para obtener información de los archivos del SO, simplemente puedes usar archivos existentes del SO y pipes.

Este comando lo amo 😄

history  | grep comando

Podemos cambiar la entrada y la salida por medio de el redireccionamiento
> permite introducir el contenido en un archivo
>> introduce contenido al final de un archivo de texto plano
| permite acelerar comunicación
tecla PIPE

Cada vez se ve complejo el curso. Supongo que lo mejor seria que nos diera algunos ejercicios para practicar.

Concuerdo con las opiniones de los demas, deberian de poner los archivos para poder descargarlos

< = (modificador ) ejecuta el resultado

= redirecciona hacia la salida

= agrega el resultado al final del archivo que se tenía.
**| **= acelera procesamiento y comunicación entre procesos.( toma la salida de un proceso y la pasa al siguiente proceso)
wc = permite contar la cantidad de caracteres, palabras o líneas que hay en un archivo.
**wc -l **= cantidad líneas que tiene un archivo

📌 Los flujos estándar que podemos encontrar en la terminal son la entrada, salida y error.

A mi parecer entendi lo que hizo con el SQL porque conozco un poco de Bases de Datos y el lenguaje, pero me parece que alguien sin ese conocimiento se perderia muy facil en esta clase.

Ademas por ejemplo ni en mi cmd o PowerShell de Windows me funciona el comando wc (el cat me funciona en la PowerShell pero no en mi cmd), entonces me parece que esta clase estuvo complicada y algo mal explicada.

Le spongo otro lugar ya que aun que ustedes tienen razon en pedir los archivos no nos vamos a limitar solo por eso, pudiendo poner el conocimiento en practica con otros datos.

http://eforexcel.com/wp/downloads-18-sample-csv-files-data-sets-for-testing-sales/

Muy buen curso y forma de explicar hasta ahora.
Lo único que agregaría es que el profesor al momento de dar ejemplos con los comandos explique un poco más toda la sintaxis que utiliza. Por ejemplo su explicación con MySQL la verdad no sé entiende a menos que tengas conocimiento (el cual no es mi caso). También sería de mucha ayuda explicar cómo utilizar algunos símbolos poco comunes a la hora de escribir pero que en la consola son más utilizados.

Les dejo un texto de 30 lineas para el siguiente desafio, puden guardarlo en un .txt 😉

(‘Sam’, ‘Worthington’),
(‘Zoe’, ‘Saldana’),
(‘Sigourney’, ‘Weaver’),
(‘Leonardo’, ‘Di Caprio’),
(‘Kate’, ‘Winslet’),
(‘Billy’, ‘Zane’),
(‘Mark’, ‘Hamill’),
(‘Harrison’, ‘Ford’),
(‘Carrie’, ‘Fisher’),
(‘Sam’, ‘Neill’),
(‘Laura’, ‘Dern’),
(‘Jeff’, ‘Goldblum’),
(‘Daniel’, ‘Radcliffe’),
(‘Emma’, ‘Watson (todos te amamos)’),
(‘Rupert’, ‘Grint’),
(‘Shia’, ‘LaBeouf’),
(‘Rosie’, ‘Huntington-Whitley’),
(‘Matthew’,‘Broderick’),
(‘James’,‘Earl Jones’),
(‘Jeremy’, ‘Irons’),
(‘Jhonny’, ‘Depp’),
(‘Helena’,‘Bonham Carter’),
(‘Mia’, ‘Wasikouska’),
(‘Albert’, ‘Brooks’),
(‘Ellen’, ‘DeGeneres’),
(‘Alexander’, ‘Gould’),
(‘Tom’, ‘Hanks’),
(‘Tim’, ‘Allen’),
(‘Mark’, ‘Ruffalo’) ;
(‘Robert’, ‘Downey Jr.(Ironman)’);

('Sam', 'Worthington'),
('Zoe', 'Saldana'),
('Sigourney', 'Weaver'),
('Leonardo', 'Di Caprio'),
('Kate', 'Winslet'),
('Billy', 'Zane'),
('Mark', 'Hamill'),
('Harrison', 'Ford'),
('Carrie', 'Fisher'),
('Sam', 'Neill'),
('Laura', 'Dern'),
('Jeff', 'Goldblum'),
('Daniel', 'Radcliffe'),
('Emma', 'Watson (todos te amamos)'),
('Rupert', 'Grint'),
('Shia', 'LaBeouf'),
('Rosie', 'Huntington-Whitley'),
('Matthew','Broderick'),
('James','Earl Jones'),
('Jeremy', 'Irons'),
('Jhonny', 'Depp'),
('Helena','Bonham Carter'),
('Mia', 'Wasikouska'),
('Albert', 'Brooks'),
('Ellen', 'DeGeneres'),
('Alexander', 'Gould'),
('Tom', 'Hanks'),
('Tim', 'Allen'),
('Mark', 'Ruffalo') ;
('Robert', 'Downey Jr.(Ironman)');```

Apuntes de la clase:

Seria de mucha utilidad que dejen los archivos para descargarlos y así poder poner en practica lo del vídeo.
Gracias

Redireccionar la salida de un comando para que se guarde en un archivo txt
ls > arhivo.txt

**Añadir el resultado a un archivo ya creado **
ls -l >> archivos.txt

**Comunicación entre procesos con pipes para tomar la salida de un proceso y dársela como entrada a otro **
ls-l | more

leer las líneas de un archivo con pipe
cat carpetas.txt | wc -l

TUBERIAS: Las tuberías en el terminal se encargar de tomar la salida de un proceso y pasársela directamente como entrada al siguiente
Pipe: | barra vertical para conectar procesos
Comando: ls –l | more
More hace mostrar un resultado largo en varias iteraciones. Con enter se muestra las iteraciones con espacio salimos

Creo que debo profundizar más en el ‘pipe’, me ha resultado algo complicado entenerlo, pero está buenísimo el curso. Sígamos!!! 😄

Necesito ver esto con unos ejercicios talvez asi me quede más claro 😒!

Pipes:
Permiten conectar la salida de un proceso con la entrada de otro
Sintaxis
<proceso1> | <proceso2>
Ejecuta el proceso dos una vez el proceso1 haya terminado (con la salida del proceso1)

Nota:
wc → word count (realiza conteos estandar)
modificadores:
-l → cuenta las lineas
-c → cuenta los bytes
-w → cuenta las palabras

< Decirle que archivo va a ejecutar despues que se cumpla la primera sentencia.
> Redireccionar la salida a otro archivo.
>> Agregar el resultado al final del archivo que ya tenia.
| more Mostrar un resultado largo en varias iteraciones
| wc -l Cuantas lineas hay en un archivo

Sintaxis de Redireccion
- Entrada
<.archivo> < <instrucciones>
(ejecuta las instrucciones en el archivo)
- Salida
<informacion>. > <archivo>
guarda la informacion en el archivo
<informacion>. >> <archivo>
añade la informacion en el archivo

Tuberías o pipes
En la línea de comandos la integración entre diferentes programas se realiza por medio de
la re-dirección de las entradas y salidas a través de pipes o tuberías.
Una tubería o pipe es una combinación de varios comandos que se ejecutan
simultáneamente, donde el resultado del primero se envía a la entrada del siguiente. Esta
tarea se realiza por medio del carácter barra vertical | . Por ejemplo si se quiere ver todos
los archivos que hay en el directorio /usr/bin, se ejecuta lo siguiente: ls /usr/bin |
more. De este modo, la salida del programa ls (listado de todos los archivos del directorio
/usr/bin) irá al programa more(modo paginado, es decir, muestra una pantalla y espera a
que pulsemos una tecla para mostrar la siguiente).

No te rindas, se que es difícil verlo al principio. La clase se entiende perfectamente.

Chicos les recomiendo el curso de terminal de linux de cisco, lo encontré mucho más completo y fácil de comprender, siento que para ser introductorio, no cumple con ese fin :’(

Es una buena clase. Además, me sumo a las sugerencias de los compañeros para que por favor nos compartan los archivos utilizados en las clases; para practicar y evidenciar si logramos los mismos resultados que obtiene el profesor.

La clase es buena 😊 lo que veo es que a veces en su forma de hablar no utiliza conectores apropiados y se siente como si hubiera cambiado de tema bruscamente.

Este curso me hace sentir perdido, al principio estaba interesante pero conforme avanza no entiendo realmente para qué es útil la terminal y como lo han comentado ya varios el hecho de no contar con los archivos que el usa hace que todo sea aún más confuso.

Me voló la cabeza toda ésta clase.
Me tocó verla más de una vez para asimilarla 😅

Solo se salto 8 clases y un curso el profe!

Aquí les dejo un ejemplo con el que probablemente sea más comprensible el uso de pipes (Permiten conectar la salida de un proceso con la entrada de otro proceso):

cat miArchivo.txt | grep -i a | sort

ls > archivo, (esto borra el contenido de archivo.)

ls >> archivo, (esto agrega contenido sin afectar el existente.)

despues de ver el video por 4ta vez ya le entendi XD

A mí me funcionó ver el vídeo por segunda vez. Esto ayudó a comprender todo con mucha más claridad.
Pensé que el profesor no explicó bien, pero era yo el que no entendía bien.
Gran tema.

A esto le hace mucha falta material de manipulación y práctica, es más complicado aprender algo si no hay ejemplos concretos para uno ir realizando tareas; uno mismo tiene que inventarse los ejercicios, dicen que la práctica es la que consolida el conocimiento en el cerebro.

También pueden usar “| less” en vez de “| more”. El more cuando llegas a la ultima linea sales del archivo, usando less permaneces en él hasta que das ‘q’

Quién me iba a decir que estudiando computación me iba a volver fontanero…

no fue tan clara esta clase. en ocaciones es bueno que se nos explique tambien cual es el simbolo a utilizar y como podemos encontrarlo en nuestros teclados.

ME tocó verlo 2 veces 😃

Hola, acá les dejo la ruta para que puedan visualizar los archivos que van creando hasta el momento desde el explorador de windows.

C:\Users[Su usuario de windows]\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState\rootfs\home[su usuario en ubuntu]

¿En qué consiste el procesamiento de datos?
El procesamiento de datos se produce cuando se recaban datos y se traducen a información utilizable. Suelen ocuparse los científicos de datos, solos o en equipo, y es importante que el procesamiento se realice correctamente para no afectar negativamente al producto final o los resultados obtenidos a partir de los datos.

El procesamiento empieza con datos en su forma en bruto y los convierte a un formato más legible (gráficos, documentos, etc.), dándoles la forma y el contexto necesarios para que los ordenadores los interpreten y los empleados los utilicen en toda una organización.

No entiendo que es lo que haces con eso del servidor que explicas al principio en la ventana de comandos? Si alguien pudo entender eso me explica por favor, ya lo vi 3 veces pero no logro entender.

📝 Mis apuntes de la clase: Procesamiento de datos

Que excelente clase. Es un poco complejo de entender porque la mayoría crecimos entendiendo el computador a través de Windows, pero realmente es algo muy útil. Gracias 😃

FLUJOS ESTANDAR: son los canales donde ingresa a un proceso y donde sale la información. Son al menos tres: _ 0 entrada, 1 salida, 2 error_
Ejem:
**Entrada - Salida
Teclado Pantalla <- Por defecto
Archivo Pantalla <- Redirección de entrada ( < )
Teclado Archivo <- Redirección de salida ( > )

Redirección de entrada ( < ): Comando < Archivo.txt
Realiza el comando con los datos del Archivo.txt

Redirección de salida ( > ): Comando > Archivo.txt
Reescribe lo que el comando realiza en el Archivo.txt siendo nuevo o no.

Redirección de salida ( >> ): Comando >> Archivo.txt
Agrega al final lo que el comando realiza en el Archivo.txt

Redirección pipe ( | ): Salida | Entrada
La salida de un comando le sirve de entrada al otro comando

https://www.youtube.com/watch?v=7ypnZDVcvxE
https://platzi.com/tutoriales/1748-terminal/4661-flujos-estandar-y-como-los-pipes-nos-pueden-dar-super-poderes/
https://www.youtube.com/watch?v=mmI0ZYwODqA

Esta clase es la primera del profe que puedo decir que le falto muchas cosas por explicar, entendí muy poco si soy sincero :"v

Min 7:27

Hola a todos!

Tengo la siguien inquietud:
Cuando intente redireccionar un archivo de sql desde la terminal hacia mysql, me muestra el siguiente error "ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ )

Ayuda por favor!!

Tips con el comando wc
Con la bandera -l muestra el numero de lineas de codigo
Con la bandera -w muestra el numero de palabras
Con la bandera -c te arroja el tamaño de bytes del archivo
Para saber mas checa el siguiente link: https://www.geeksforgeeks.org/wc-command-linux-examples/

no entiendo de donde salen los archivos ni los my sql q el tiene

Hay un comando sumamente útil en linux: tee

Lo utilizo mucho en pipelines de automatización, hay ocasiones que necesitas que el output se redirija a un archivo pero al mismo tiempo que sea desplegado. Tee permite precisamente esto.

E.g.
cat nombre_archivo.txt | tee archivo_nuevo.txt
El contenido de nombre_archivo.txt se desplegará en la terminal y al mismo tiempo guardará el output en archivo_nuevo.txt

Más información en: https://www.geeksforgeeks.org/tee-command-linux-example/

espero os guste jejeje hice esfuerzo de que me quedara 😃
INSERTINTO actores (nombre, apellido) VALUES
(‘Sam’, ‘Worthington’),
(‘Zoe’, ‘Saldana’),
(‘Sigourney’, ‘Weaver’),
(‘Leonardo’, ‘Di Caprio’),
(‘Kate’, ‘Winslet’),
(‘Billy’, ‘Zane’),
(‘Mark’, ‘Hamill’),
(‘Harrison’, ‘Ford’),
(‘Carrie’, ‘Fisher’),
(‘Sam’, ‘Neill’),
(‘Laura’, ‘Dern’),
(‘Jeff’, ‘Goldblum’),
(‘Daniel’, ‘Radcliffe’),
(‘Emma’, ‘Watson (sho te amo)’),
(‘Rupert’, ‘Grint’),
(‘Shia’, ‘LaBeouf’),
(‘Rosie’, ‘Huntington-Whitley’),
(‘Matthew’,‘Broderick’),
(‘James’,‘Earl Jones’),
(‘Jeremy’, ‘Irons’),
(‘Jhonny’, ‘Depp’),
(‘Helena’,‘Bonham Carter’),
(‘Mia’, ‘Wasikouska’),
(‘Albert’, ‘Brooks’),
(‘Ellen’, ‘DeGeneres’),
(‘Alexander’, ‘Gould’),
(‘Tom’, ‘Hanks’),
(‘Tim’, ‘Allen’),
(‘Mark’, ‘Ruffalo’)
;

Francamente no entendí mucho esta clase porque aún no el lenguaje sql. Creo que profesor debe hacer ejemplo sencillo siendo este curso introductorio.

Minuto 6:20 cuando utiliza " ls -L | more" y aparece el archivo en lista “PHP como Dios manda.pdf”

Ya se como colocarle a mis proyectos de ahora en adelante para que sean BENDECIDOS y eficientes hahahaha


Mis apuntes 😄

on Linux everything is a file.

Los Pipes = Tomar la salida de un proceso y pasarla directamente como entrada al siguiente.

Muy bueno al momento, solo tengo duda de como encontrar la base de datos o como poder crearla ya que no hubo una parte donde indicaran como crearla, he investigado por no he tenido suerte.

Cuando hablamos de **redireccionar el flujo de un programa** podemos enviar el estándar out(STDOUT) y el estándar error(STDERR) a dos lugares diferentes. Por defecto cuando ejecutamos un programa tanto el stdout y el stderr se envíen al mismo sitio pero lo podemos dividirlo así: **comando del programa 1>> archivo.txt 2>> error.txt** donde el 1 indica que el stdout se enviara al archivo que se indica a continuación y el 2 indica que los mensajes de error se enviarán a un archivo llamado error.txt y el doble (mayor que) indica que la información se concatenará es decir si el archivo tenía información no la borrara si no que reescribirá la nueva información al final de la vieja.

Estupenda clase!

Redirección

Entonces mediante el uso de pipes “|” al tomar la salida de un proceso y pasársela al siguiente vamos a poder encadenar procesos, muchas gracias por la clase instructor Mauro.

Excelente clase

toor@LAPTOP-GMTMVO6L:~$ ls
development
toor@LAPTOP-GMTMVO6L:~$ cd development/
toor@LAPTOP-GMTMVO6L:~/development$ clear
toor@LAPTOP-GMTMVO6L:~/development$ ll
total 20
drwxrwxrwx 1 toor toor 4096 Mar 7 12:42 ./
drwxr-xr-x 1 toor toor 4096 Mar 7 12:36 …/
-rw------- 1 toor toor 12288 Mar 7 12:22 .archivo.tx.swp
drwxrwxrwx 1 toor toor 4096 Feb 28 20:18 cursos_platzi/
-rw-rw-rw- 1 toor toor 656 Mar 7 12:06 dump1.sql
-rw-rw-rw- 1 toor toor 40 Mar 7 00:40 file1
-rw-rw-rw- 1 toor toor 33 Mar 7 00:43 file1M-D
-rw-rw-rw- 1 toor toor 24 Mar 7 11:30 file2
-rw-rw-rw- 1 toor toor 17 Mar 7 00:47 vim.txt
toor@LAPTOP-GMTMVO6L:~/development$ ls >archivo.txt
toor@LAPTOP-GMTMVO6L:~/development$ cat archivo.txt
archivo.txt
cursos_platzi
dump1.sql
file1
file1M-D
file2
vim.txt
toor@LAPTOP-GMTMVO6L:~/development$ nano archivo.txt
toor@LAPTOP-GMTMVO6L:~/development$ cat archivo.txt
archivo.txt
cursos_platzi
dump1.sql

toor@LAPTOP-GMTMVO6L:~/development$ ls
archivo.txt cursos_platzi dump1.sql file1 file1M-D file2 vim.txt
toor@LAPTOP-GMTMVO6L:~/development$ ls > archivo1.txt
toor@LAPTOP-GMTMVO6L:~/development$ cat archivo1.txt
archivo.txt
archivo1.txt
cursos_platzi
dump1.sql
file1
file1M-D
file2
vim.txt
toor@LAPTOP-GMTMVO6L:~/development$ nano archivo1.txt
toor@LAPTOP-GMTMVO6L:~/development$ cat archivo1.txt

file1
file1M-D
file2
vim.txt
toor@LAPTOP-GMTMVO6L:~/development$ date
Sat Mar 7 12:47:07 -05 2020
toor@LAPTOP-GMTMVO6L:~/development$ nano archivo1.txt
toor@LAPTOP-GMTMVO6L:~/development$ nano archivo1.txt
toor@LAPTOP-GMTMVO6L:~/development$ cat archivo1.txt

file1
file1M-D
file2
vim.txt
Sat Mar 7 12:47:07 -05 2020

toor@LAPTOP-GMTMVO6L:~/development$

```<code>

Flujo o Frame

del segundo metodo de direccionamiento entiendo el por que pone ls, que es para ver todos los archivos que tiene en el directorio en donde se encuentra pero cuando puso el ls > archivos.txt esto que significa? guardo la lista de todos sus otros archivos dentro del archivos.txt ???

No entendí muy bien cómo es el uso de pipes al escribirlo en terminal.

Toca repetir el video para tratar de entender.
A intentarlo de nuevo

pueden usar visual code y en terminal dan clic en wsl y les abrira una terminal de ubuntu y podran ver los arvchivos de texto

Ignoraba el uso de las pipes |

Lo tube que ver 3 veces pero todo quedo claro 😃

Sí, toca verlo 2 veces para entenderlo bien.
Pero en resumen es que a veces la salida de algo, puede ser la entrada de otra cosa.

Me pasó que entendía que lo que entraban eran datos como tal y no procesos que se guardan en el servidor o se pueden concadenar, pero ya super entendido 😄

Mi manera de entender los pipes es viendo los comandos como si se trataran de funciones en un lenguaje de programación. Sin embargo, desde esa perspectiva me surgen algunas dudas. Por ejemplo: qué pasa si la salida de un comando no es compatible con la entrada del otro comando? es decir, en las funciones cuando no se proporciona un valor del tipo que la función espera se tienen resultados erróneos o inesperados. Qué pasa en el caso de los comandos y los pipes?

Por otra parte puede que tratar de entender los pipes desde esa perspectiva no sea correcto. En ese caso la pregunta sería ¿Qué enfoque o analogía “técnica” sirve mejor para entender los pipes?

Saludos.

Realmente la consola es super potente y flexible

Estaría muy bien que en el apartado de materiales nos compartieran los archivos que se usan en la clase para seguir lo ejemplos que se presentan

el profe no limpia la consola, se hace dificil ver lo que escribe por que las lineas estan hasta abajo

Redireccionar el flujo es potente pero hay que poner atención para llegar a entenderlo

Cómo borras la línea completa?

Sino lo entendiste a la primera tranquilo, ve el video de nuevo enfocate y veras todo mas claro. ! 😄