¿Alguien puede publicar un ejemplo simple de usar canalizaciones con nombre en Bash en Linux?Ejemplo de uso de canalizaciones con nombre en Linux Bash
Respuesta
Uno de los mejores ejemplos de un uso práctico de una tubería con nombre ...
De http://en.wikipedia.org/wiki/Netcat
Otro comportamiento útil es usar netcat como un proxy. Ambos puertos y hosts pueden ser redirigidos. Mira este ejemplo:
nc -l 12345 | nc www.google.com 80
puerto 12345 representa la solicitud Así se inicia un servidor de Carolina del Norte en el puerto 12345 y todas las conexiones redirecciona a google.com:80. Si un navegador web realiza una solicitud a nc, la solicitud se enviará a google pero la respuesta no se enviará al navegador web. Eso es porque las tuberías son unidireccionales. Esto se puede solucionar con una tubería con nombre para redirigir la entrada y la salida.
mkfifo backpipe
nc -l 12345 0<backpipe | nc www.google.com 80 1>backpipe
Éstos son los comandos:
$ mkfifo named_pipe
$ echo "Hi" > named_pipe &
$ cat named_pipe
El primer comando crea la tubería.
El segundo comando se escribe en la tubería (bloqueo). El &
pone esto en segundo plano para que pueda continuar escribiendo comandos en el mismo shell. Saldrá cuando el siguiente comando vacíe el FIFO.
El último comando se lee de la tubería.
Cambiaría el # a $ por lo que no está todo comentado (¡y no se ejecuta como root!) – alternative
¡Solo para mostrar que se trata de un intérprete de comandos de shell! – Khaled
Es habitual que "#" haga referencia a un aviso raíz (es decir, un mensaje en un shell raíz). No hay nada aquí que requiera ejecutarse en un shell raíz. – thomasrutter
Abra dos cubiertas diferentes y déjelas una al lado de la otra. En ambos, ir al directorio/tmp/
cd /tmp/
En el primero un tipo:
mkfifo myPipe
echo "IPC_example_between_two_shells">myPipe
En la segunda, tipo:
while read line; do echo "What has been passed through the pipe is ${line}"; done<myPipe
primera carcasa no dará le devuelve la respuesta hasta que ejecute la segunda parte del código en el segundo intérprete de comandos. Es porque la lectura y la escritura fifo son bloqueantes.
También puede echar un vistazo al tipo FIFO haciendo un ls -al myPipe
y ver los detalles de este tipo específico de archivo.
¡El siguiente paso sería embarcar el código en un script! - Espero eso ayude.
¿Es posible realizar escrituras sin bloqueo en el fifo? – dabicho
- 1. Canalizaciones con nombre: asimetría
- 2. Usar canalizaciones con nombre con bash - Problema con pérdida de datos
- 3. Ejemplo de canalizaciones con nombre IPC con tiempo de espera de lectura/escritura
- 4. SQL Azure Database Canalizaciones con nombre Error
- 5. Canalizaciones con nombre aisladas en sesiones de Terminal Server
- 6. Usar canalizaciones con nombre de manera asíncrona con StreamWriter
- 7. Compatibilidad con tuberías con nombre de Windows en Linux
- 8. Canalizaciones con nombre de Win32 y clientes remotos
- 9. C++: implementando canalizaciones con nombre utilizando la API de Win32
- 10. En Windows, ¿Puedo usar Canalizaciones con nombre como archivos?
- 11. ¿Es posible descubrir canalizaciones con nombre en Windows?
- 12. Ejemplo de uso de TLoginCredentialService
- 13. Tiempo de espera de lectura de servidor de canalizaciones con nombre
- 14. Nombre de archivo no imprimir correctamente con subrayado "_" en bash
- 15. ¿Cómo puedo obtener una lista de todas las canalizaciones con nombre abierto en Windows?
- 16. Creación de scripts en shell: uso de bash con xargs
- 17. ¿Es posible cambiar el tamaño de una tubería con nombre en Linux?
- 18. Ejemplo de uso de SetupDiGetDeviceProperty
- 19. Canalizaciones Shell: salga inmediatamente cuando falle un comando
- 20. Uso de dos puntos con argumentos con nombre en ColdFusion
- 21. Ejemplo de uso de MSCHART en C#
- 22. Ejemplo de uso de hipervínculo en WPF
- 23. Ejemplo de uso de assert en Python?
- 24. Ejemplo de uso de BLOB en SQLAlchemy
- 25. Glob cambio de nombre en bash
- 26. Ejemplo de llamada por nombre
- 27. Archivos de cambio de nombre de lote con Bash
- 28. CreateProcessWithTokenW - Ejemplo de uso en C#
- 29. Plugin de Chrome: Accediendo a canalizaciones nombradas en Windows
- 30. Uso de: - (dos puntos) en bash
¿Algún idioma específico? – slashmais