Forum >> Principianti >> come usare uno script python come se fosse un comando del terminale?

Pagina: 1

ho scritto un codice python che, leggendo linea per linea un file di testo, stampa sullo schermo uno specifico output. come faccio a fare uso di questo script come se fosse un comando integrato nel terminale?

per farvi un esempio vorrei che il mio programma si comportasse come il comadno "grep", in cui io scrivo "cat file.txt | grep ciccio" e vedo tutte linee che contengono la stringa "ciccio". se io digito "cat file.txt | nome_script argomento" oppure "nome_script argomento file.txt" vorrei vedere nel terminale l'output generato dallo script.


--- Ultima modifica di TurboC in data 2019-06-13 11:07:15 ---
Mah sai, se invochi lo script dal terminale, allora lo stai *già* usando come se fosse un comando del terminale, perché... *è proprio* un comando del terminale! Se lo script scrive nello standard output (e quindi, diciamo, "nel terminale") nessuno ti vieta di inserirlo dentro una pipe...


per esempio, se il tuo script (molto banalmente) fa così:
# mioscript.py
print('ciao ciao ciao')
print('mamma papa zio')
print('addio')
allora se tu lo invochi così: "python mioscript.py", vedrai in output tutte e tre le righe stampate.


Ma se tu lo invochi dentro una pipe, così: "python mioscript.py | grep mamma", allora vedrai in output solo la seconda riga stampata.




(ovviamente, una pipe in una shell linux lavora pur sempre sul testo dello standard output... se il tuo script non scrive nello standard output, allora avrai bisogno di cose più complesse, suppongo)

https://leanpub.com/capirewxpython: Capire wxPython, il mio libro
https://pythoninwindows.blogspot.com: Python in Windows, il mio blog e le mie guide


Pagina: 1



Esegui il login per scrivere una risposta.