29 lines
1.2 KiB
Python
29 lines
1.2 KiB
Python
import os
|
||
|
||
def find_shortest_filename(source_dir, result_file):
|
||
# Существует ли папка result? Если нет, то создается
|
||
result_dir = os.path.dirname(result_file)
|
||
if not os.path.exists(result_dir):
|
||
os.makedirs(result_dir)
|
||
print(f"Created directory {result_dir}")
|
||
|
||
# Поиск файлов в исходной директории
|
||
files = [f for f in os.listdir(source_dir) if os.path.isfile(os.path.join(source_dir, f))]
|
||
|
||
if not files:
|
||
print(f"No files found in {source_dir}")
|
||
return
|
||
|
||
# Поиск файла с самым коротким именем
|
||
shortest_file = min(files, key=len)
|
||
shortest_file_path = os.path.join(source_dir, shortest_file)
|
||
|
||
# Копирование содержимого в result/data.txt. Файл будет перезаписан, если уже существует
|
||
with open(shortest_file_path, 'r') as f_in, open(result_file, 'w') as f_out:
|
||
f_out.write(f_in.read())
|
||
|
||
print(f"Moved {shortest_file} to {result_file}")
|
||
|
||
if __name__ == "__main__":
|
||
find_shortest_filename('/var/data', '/var/result/data.txt')
|