Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di bako
    Registrato dal
    Feb 2004
    Messaggi
    1,797

    "|" PIPE come funzionano?

    Salva gente,
    devo implementare una shell per un esame, tra i requisit c'è limplementazione delle pipe ..
    solo che non ho capito come funzionano
    se do
    who | wc
    loutput di who va a wc che lo legge giusto?
    e se do
    who | wc | qualcosa altro
    l'output dei primi 2 va nel 3°?
    e se do
    gedit 1 | gedit 2| gedit 3| gedit 4
    apre gedit, con i file 1 2 3 4?

  2. #2
    No, le pipe sono proprio dei "tubi" tra un comando e l'altro:
    Es:
    codice:
    cmd1 | cmd2 | cmd3
    L'output di cmd1 va a cmd2, che lo legge dallo standard-in. Poi, qualunque cosa faccia cmd2, il suo output viene passato a cmd3, che lo legge dallo stdin, e cosi via...
    In pratica cmd3 non riceve l'output di cmd1 se non attraverso l'output di cmd2

  3. #3
    Utente di HTML.it L'avatar di bako
    Registrato dal
    Feb 2004
    Messaggi
    1,797
    capito, ora è tutto più chiaro..

  4. #4
    Utente di HTML.it L'avatar di bako
    Registrato dal
    Feb 2004
    Messaggi
    1,797
    qualcuno mi posta un comando che sfrutta il maggior numero di pipe? (5 o 6 tipo)
    es: questo | comando | sfrutta | le | pipe | ciao
    ovviamente che abbia un senso da fare con le pipe..

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    746
    è solo un esempio...

    cat $(find /usr/include -type f | grep alsa |grep seq.h) |sort |uniq |tr a-z A-Z |lp -d tp0

    se vuoi più pipe aggiungi qualche sed...


  6. #6
    Utente di HTML.it L'avatar di bako
    Registrato dal
    Feb 2004
    Messaggi
    1,797
    Originariamente inviato da U-bahn
    è solo un esempio...

    cat $(find /usr/include -type f | grep alsa |grep seq.h) |sort |uniq |tr a-z A-Z |lp -d tp0

    se vuoi più pipe aggiungi qualche sed...

    VVoVe: va benone

  7. #7
    Moderatore di Linux e software L'avatar di francofait
    Registrato dal
    Aug 2001
    Messaggi
    13,558
    Originariamente inviato da bako
    VVoVe: va benone
    scusate ma un riesco proprio a trattenerla

    le 'pipe' funzionan sempre :maLOL: :maLOL:

  8. #8
    Utente di HTML.it L'avatar di bako
    Registrato dal
    Feb 2004
    Messaggi
    1,797
    Originariamente inviato da francofait
    scusate ma un riesco proprio a trattenerla

    le 'pipe' funzionan sempre :maLOL: :maLOL:
    bella
    problemino: quella uso delle pipe mi sembra usi le parentesi per le priorità
    io nella mia shell nn l'ho implemntata, quindi mi serve un uso delle pipe liscio

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    746
    Originariamente inviato da bako
    bella
    problemino: quella uso delle pipe mi sembra usi le parentesi per le priorità
    io nella mia shell nn l'ho implemntata, quindi mi serve un uso delle pipe liscio
    beh, le parentesi servono per passare a cat l'output delle pipe tra le parentesi, dato che cmd1|cmd2|cm3|cat non funziona....puoi sostituire le pipe tra parentesi con il nome di un file ed aggiungere tutte le pipe che vuoi

    es.

    cat /usr/include/stdio.h |grep extern |sort |uniq |tr e 0 |tail -n 50 |rev |tac |nl |less

    (mi chiedo a cosa potrebbe servire)


  10. #10
    Utente di HTML.it L'avatar di bako
    Registrato dal
    Feb 2004
    Messaggi
    1,797
    Originariamente inviato da U-bahn

    (mi chiedo a cosa potrebbe servire)
    ho fatto una shell in c, che implementa anche l'uso delle pipe e devo testarlo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.