Qualcuno può inviare un semplice esempio di utilizzo di named pipe in Bash in Linux?Esempio di utilizzo di named pipe in Linux Bash
risposta
Uno dei migliori esempi di un uso pratico di una named pipe ...
Da http://en.wikipedia.org/wiki/Netcat
Un altro comportamento utile sta usando netcat come proxy. Entrambe le porte e gli host possono essere reindirizzati. Guarda questo esempio:
nc -l 12345 | nc www.google.com 80
Port 12345 rappresenta la richiesta di Questo avvia un server nc sulla porta 12345 e tutti i collegamenti reindirizzati google.com:80. Se un browser Web inoltra una richiesta a nc, la richiesta verrà inviata a google ma la risposta non verrà inviata al browser web. Questo perché i tubi sono unidirezionali. Questo può essere risolto con una named pipe per reindirizzare l'input e l'output.
mkfifo backpipe
nc -l 12345 0<backpipe | nc www.google.com 80 1>backpipe
Ecco i comandi:
$ mkfifo named_pipe
$ echo "Hi" > named_pipe &
$ cat named_pipe
Il primo comando crea il tubo.
Il secondo comando scrive al tubo (blocco). Lo &
lo mette in secondo piano in modo da poter continuare a digitare comandi nella stessa shell. Uscirà quando il FIFO viene svuotato dal comando successivo.
L'ultimo comando legge dal tubo.
vorrei cambiare il # per $ quindi non è tutto commentato (e non eseguito come root!) – alternative
E 'solo per dimostrare che questo è rapido un guscio! – Khaled
È consuetudine che "#" faccia riferimento a un prompt di root (ovvero, un prompt in una shell di root). Non c'è niente qui che richiederebbe l'esecuzione in una shell di root. – thomasrutter
Aprire due gusci diversi e lasciarli affiancati. In entrambi, andare in/tmp/directory
cd /tmp/
Nel primo tipo:
mkfifo myPipe
echo "IPC_example_between_two_shells">myPipe
Nella seconda, tipo:
while read line; do echo "What has been passed through the pipe is ${line}"; done<myPipe
primo guscio non daranno qualsiasi richiamo fino a quando non si esegue la seconda parte del codice nella seconda shell. È perché il fifo legge e scrive sta bloccando.
Puoi anche dare un'occhiata al tipo FIFO facendo un ls -al myPipe
e vedere i dettagli di questo specifico tipo di file.
passo successivo sarebbe quello di intraprendere il codice in uno script! - Spero che sia d'aiuto.
È possibile effettuare scritture non bloccanti sulla fifo? – dabicho
- 1. WCF named pipe minimo esempio
- 2. Crea named pipe C++ Windows
- 3. IPC vs dominio pipe vs named pipe
- 4. Scrivi su fifo (named pipe)
- 5. Named pipe in Java e multithreading
- 6. Come creare named pipe (mkfifo) in Android?
- 7. Named pipe e possono trasmettere dati?
- 8. È possibile modificare le dimensioni di una named pipe su Linux?
- 9. Prestazioni IPC: named pipe vs socket
- 10. Esempio di pipe denominate IPC con timeout di lettura/scrittura
- 11. bash pipe & SIGTERM
- 12. Utilizzo di pipe multiprocessing in python
- 13. Utilizzo di pipe denominate in modo asincrono con StreamWriter
- 14. Come si legge un FIFO/named pipe line by line da un'app C++/Qt Linux?
- 15. Come svuotare una pipe usando la bash
- 16. Socket vs named pipe per IPC locale su Windows?
- 17. Qual è il posto giusto dove inserire named pipe su Linux?
- 18. Python - Come chiamare i comandi di bash con pipe?
- 19. Esempio di utilizzo TLoginCredentialService
- 20. C++ Utilizzo di pipe denominate Windows
- 21. Come abilitare l'applicazione wcf abilitata per il net pipe con named pipe in iis?
- 22. WCF Named Pipe Security e sessioni multiple dell'utente?
- 23. Uscita pipe e stato di uscita acquisizione in Bash
- 24. Demo di Bash Linux online
- 25. Esempio di utilizzo di asserzione in Python?
- 26. Come vedere quanti dati vengono messi in coda in una named pipe?
- 27. che controlla il nome di una named pipe durante l'hosting di WCF net.pipe binding in IIS
- 28. Named Pipe CreateFile() restituisce INVALID_HANDLE_VALUE e GetLastError() restituisce ERROR_PIPE_BUSY
- 29. Sistema operativo minimo Autorizzazioni necessarie per creare named pipe (WCF)
- 30. Named pipe simile alla creazione "mkfifo", ma bidirezionale
qualunque lingua specifica? – slashmais