grep mit variable in python

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Gast

grep mit variable in python

Beitragvon Gast » Freitag 22. April 2005, 12:34

Hallo
ich versuche aus python auf eine liste von dateien ein grep also auf jedes einzelne einen grep auszuführen um mir die Zeile mit dem namen der datei und der zeile gleichzeitig ausgeben zu lassen...
bei aufurf von os.system('grep muster file') wobei file die laufvariable der for-schleife ist gehts nicht weil ja file eine variable ist und nicht der name der datei....leider schaffe ich es nicht hier weiterzukommen...

bin ich wirklicch gezwungen über file.readlines() und dann über jede zeile von readlines ein string.find zu machen??? kann ich es nicht mit grep realisieren?
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Freitag 22. April 2005, 12:52

Code: Alles auswählen

os.system('grep muster %s' % filename)

Blos den Output von grep kannst du mit os.system nicht bekommen.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
knekke
User
Beiträge: 100
Registriert: Freitag 29. Oktober 2004, 17:23
Wohnort: Schweden

Beitragvon knekke » Freitag 22. April 2005, 13:01

DU kannst aber den output in eine Datei schreiben und dann mit python wieder einlesen.

Code: Alles auswählen

 os.system('grep muster %s >> datei.txt' % filename)


Bin ich blind??? Ich seh in dem neuen theme keinen Button für pythoncode-tags...
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Beitragvon jens » Freitag 22. April 2005, 13:07

Code: Alles auswählen

command = 'grep muster %s' % filename
process = subprocess.Popen( command, shell=True, stdout=subprocess.PIPE)

print process.stdout.read()

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Freitag 22. April 2005, 13:16

Ja, genau, jens' Vorschlag ist gut. Hättest du Lust, jens, auf NeuereVersionen das Kapitel zu subprocess zu machen? Vermutlich kennst du dich von uns hier am besten aus, sonst muss ich mich daran amchen und dann wirds wieder ewig dauern.

knekke hat geschrieben:Bin ich blind??? Ich seh in dem neuen theme keinen Button für pythoncode-tags...

Nein bist du nicht. Den gibt's einfach nicht mehr. Aber ich habe es sowieso meist per Hand eingetippt, also ist mir das recht egal.
Zuletzt geändert von Leonidas am Freitag 22. April 2005, 13:47, insgesamt 1-mal geändert.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Beitragvon jens » Freitag 22. April 2005, 13:31

Leonidas hat geschrieben:Hättest du Lust, jens, auf NeuereVersionen das Kapitel zu subprocess zu machen?


Hab dort was geschrieben, aber soviel ist's nicht...

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd

Wer ist online?

Mitglieder in diesem Forum: Baidu [Spider]