Ergebnis 1 bis 6 von 6
  1. #1
    W32.FunLove
    Registriert seit
    17.10.2011
    Beiträge
    142

    Standard [Python] Daten aus Linux Pipe lesen

    Hallo
    Ich will ein Python-Script beim Starten mit Daten aus einem anderen Programm füttern können.
    echo "hallo" | main.py

    Das Script soll aber auch ohne Fehler oder merkwürdigem Verhalten aufgerufen werden können, ohne Daten mit einer Pipe zu übergeben.

    Wie kann ich das in Python realisieren?


    Mit merkwürdigem Verhalten meine ich, dass zum Beispiel aus stdin gelesen wird bis EOF gesendet wird.

  2. #2
    Capt'n Crunch
    Registriert seit
    10.07.2008
    Beiträge
    999

    Standard AW: [Python] Daten aus Linux Pipe lesen

    und wo ist da das Problem? Prüf einfach ob Parameter übergeben wurden. Falls nicht evtl STDIN horchen und hier info holen...
    bitcoin. Banking Is Necessary. Banks Are Not. - by Lincoln6Echo

    Das ganze Mysql usw is mir zu viel arbeit um es zu lernen

  3. #3
    W32.FunLove
    Registriert seit
    17.10.2011
    Beiträge
    142

    Standard AW: [Python] Daten aus Linux Pipe lesen

    Hast du das schon mal probiert? Es klappt nicht.
    Wenn ich etwas mit | übergebe landet es nicht in sys.argv

    ---------- Post added at 21:57 ---------- Previous post was at 20:59 ----------

    Bin jetzt zur Lösung mit sys.stdin.isatty() gekommen

    Code:
    #!/usr/bin/python
    import sys
    print sys.stdin.isatty()

  4. #4
    W32.FunLove Avatar von Fraud4Life
    Registriert seit
    23.10.2011
    Beiträge
    120

    Standard AW: [Python] Daten aus Linux Pipe lesen

    root@www3.bankenverband.de:~/Work > cat test.py
    import sys
    while 1:
    try:
    line = sys.stdin.readline()
    except KeyboardInterrupt:
    break

    if not line:
    break

    print line
    root@www3.bankenverband.de:~/Work > echo fraud is philanthropy | python test.py
    fraud is philanthropy

    root@www3.bankenverband.de:~/Work >






    :-/
    Greetz to all my friends at: ADM, cDc, LulzSec, Phenolite, Team Poison and THC.

  5. #5
    W32.FunLove
    Registriert seit
    17.10.2011
    Beiträge
    142

    Standard AW: [Python] Daten aus Linux Pipe lesen

    Fraud4Life: Da wartet das Script auf EOF. Das ist was ich nicht wollte. Mit sys.stdin.isatty() kann man da ne schnelle Lösung erstellen. Finde nur leider nicht viel zu der Methode isatty(). Kann nicht genau sagen, was das ist und wie/warum das funktioniert.

  6. #6
    W32.FunLove Avatar von Fraud4Life
    Registriert seit
    23.10.2011
    Beiträge
    120

    Standard AW: [Python] Daten aus Linux Pipe lesen

    root@ws-fra1.win-ip.dfn.de:~/Work > cat sick.py
    #!/usr/bin/env python
    import sys

    def main(argv = sys.argv):

    if not sys.stdin.isatty():
    for s in sys.stdin.readlines():
    print "Pipe(d): " + s,

    # Parameter, yo
    L = sys.argv[1:]
    if len(L)!=0:
    print "CLI Parameter-List: " + str(L)
    sys.exit(0)
    pass

    if __name__ == "__main__":
    try:
    main(sys.argv)
    except KeyboardInterrupt:
    pass

    # EOF, yo
    root@ws-fra1.win-ip.dfn.de:~/Work > ./sick.py
    root@ws-fra1.win-ip.dfn.de:~/Work > ./sick.py siiiickk
    CLI Parameter-List: ['siiiickk']
    root@ws-fra1.win-ip.dfn.de:~/Work > ./sick.py siiiickk 123 456 no skills
    CLI Parameter-List: ['siiiickk', '123', '456', 'no', 'skills']
    root@ws-fra1.win-ip.dfn.de:~/Work > echo lol pipaments |./sick.py
    Pipe(d): lol pipaments
    root@ws-fra1.win-ip.dfn.de:~/Work > echo gangbangparty bei steffie > test.txt
    root@ws-fra1.win-ip.dfn.de:~/Work > cat test.txt |./sick.py
    Pipe(d): gangbangparty bei steffie
    root@ws-fra1.win-ip.dfn.de:~/Work >
    Greetz to all my friends at: ADM, cDc, LulzSec, Phenolite, Team Poison and THC.

Ähnliche Themen

  1. Python Malware
    Von StormSeven im Forum Python
    Antworten: 12
    Letzter Beitrag: 11.12.2010, 13:10
  2. Wickie Pipe
    Von SMiN.t im Forum Off-Topic
    Antworten: 2
    Letzter Beitrag: 25.10.2010, 21:31
  3. Welche Programmiersprache um Crypter etc. zu schreiben | Info über Linux + Python
    Von Agent-Schami im Forum Sonstige Programmiersprachen
    Antworten: 31
    Letzter Beitrag: 27.08.2010, 17:26

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •