31 lines
1.2 KiB
Python
31 lines
1.2 KiB
Python
import os
|
||
import shutil
|
||
|
||
# Пути к директориии для поиска и файла для сохранения
|
||
source_dir = '/var/data'
|
||
destination_file = '/var/result/data.txt'
|
||
|
||
# Простая функция дл подсчёта строк в файле. Настроили для работы с кириллицей (utf-8)
|
||
def count_lines(filepath):
|
||
with open(filepath, 'r', encoding='utf-8', errors='ignore') as f:
|
||
return sum(1 for _ in f)
|
||
|
||
# Старт поиска файла по условию (самое большое кол-во строк)
|
||
max_lines = 0
|
||
max_file = None
|
||
|
||
for filename in os.listdir(source_dir):
|
||
file_path = os.path.join(source_dir, filename)
|
||
|
||
if os.path.isfile(file_path):
|
||
lines = count_lines(file_path)
|
||
if lines > max_lines:
|
||
max_lines = lines
|
||
max_file = file_path
|
||
|
||
# Копирование файла с самым большим кол-вом строчек в нужную директорию
|
||
if max_file:
|
||
shutil.copy(max_file, destination_file)
|
||
print(f"{max_file} с кол-вом строк {max_lines} был перемещен в {destination_file}")
|
||
else:
|
||
print("Указанная директория пустая :(") |