Я просто пытаюсь создать программу на python 3, которая запускает все файлы .sql в определенном каталоге и затем применяет мое регулярное выражение, которое добавляет; после определенного экземпляра и запишите изменения, внесенные в файл, в отдельный каталог с соответствующими именами файлов.
Итак, если у меня были файлы file1.sql и file2.sql в каталоге "/ home / files", то после запуска программы выходные данные должны записать эти два файла в "/ home / new_files" без изменения содержимого оригинальные файлы.
Вот мой код:
import glob
import re
folder_path = "/home/files/d_d"
file_pattern = "/*sql"
folder_contents = glob.glob(folder_path + file_pattern)
for file in folder_contents:
print("Checking", file)
for file in folder_contents:
read_file = open(file, 'rt',encoding='latin-1').read()
#words=read_file.split()
with open(read_file,"w") as output:
output.write(re.sub(r'(TBLPROPERTIES \(.*?\))', r'\1;', f, flags=re.DOTALL))
Я получаю сообщение об ошибке «Имя файла слишком длинное»: «СОЗДАТЬ ВНЕШНЮЮ ТАБЛИЦУ», а также я не очень уверен, куда бы я поместил свой путь вывода (/ home / files / new_dd) в своем коде.
Есть идеи или предложения?