Code: Alles auswählen
def func()
with open("file_A", "r") as infile, open("file_1.txt", 'w') as outfile_1, open("file_2.txt", 'w') as outfile_2, open("file_3.txt", 'w') as outfile_2:
# hier ist ein Stück Code welcher nach String_XXX in file_A sucht und diese Zeile in file_1.txt schreibt
as outfile_1.write(line)
# hier ist ein Stück Code welcher nach String_ZZZ in file_A sucht und diese Zeile in file_2.txt schreibt
as outfile_2.write(line)
# hier ist ein Stück Code welcher nach String_YYY in file_A sucht und diese Zeile in file_3.txt schreibt
as outfile_3.write(line)
Die Übrigen Skripte machen das gleiche, unterschied ist das diese nur aus anderen Dateien lesen (file_B,file_C...) und schreiben die entsprechenden Inhalte wieder in die
3 output files (file_1.txt, file_2.txt, file_1.txt) welche dann überschrieben werden. Zudem wird nach dem selben Inhalt (String_XXX,String_ZZZ,String_YYY) in allen Dateien gesucht.
Die Logik ist also ganz die gleiche, nur das jedes Skript eine andere Datei liest. Ich möchte das ganze jetzt natürlich in einem Skript haben. Die andere Sache ist,
ich habe wiederum 6 bash files aus denen jeweils das entsprechende python script aufgeruffen wird, also:
bash_1.cmd ruft python_1.py
bash_2-cmd ruft python_2.py
.
.
Dies soll nun so aussehen:
bash_1.cmd ruft python.py
bash_2.cmd ruft python.py
.
.
Je nachdem welches bash file aufgeruffen wird, soll eine entsprechende Datei im python script aufgeruffen werden. Pseudocode mässig würde das so aussehen:
Code: Alles auswählen
If script.py aufgeruffen von bash_script_A dann:
open ("file_A", "r") as infile, open("file_1.txt", 'w') as outfile_1, open("file_2.txt", 'w') as outfile_2, open("file_3.txt", 'w') as outfile_2:
# Code code
as outfile_1.write(line)
# Code code
as outfile_2.write(line)
# Code code
as outfile_3.write(line)
Code: Alles auswählen
elif aufgeruffen von bash_script_B dann:
open ("file_B", "r") as infile, open("file_1.txt", 'w') as outfile_1, open("file_2.txt", 'w') as outfile_2, open("file_3.txt", 'w') as outfile_2:
# Code code
as outfile_1.write(line)
# Code code
as outfile_2.write(line)
# Code code
as outfile_3.write(line)
Wie könnte man so etwas am besten realisieren? Den namen des bash skript als Funktionsparameter verwenden?
Bin dankbar für Tipps!