Доброго вечера всем (так как пишу пост вечером ))
Сегодня мне пришлось решать задачу с разбивкой текстового файла на несколько. Признаком для разбивки я выбрал количество строк, так как файл содержал >53000 ссылок (понимать - строк).
Решение в интернете искал минут 20. Потом, после того как нашел несколько нерабочих скрипта на VBScript и bat, написал более надежный, свой, за 3 минуты (пока откроешь SublimeText, пока сохранишь файл...).
Пользуйтесь.
#~*~ coding: utf-8 ~*~
# Open file
src = open("links.txt", "r")
i = 0
line_i = 0
dest_str = "links_%s.txt"
# maximum lines count for each new file
max_lines_count = 1000
# read lines
lines = src.readlines()
src.close()
# open new file "links_0.txt"
f = open(dest_str % i, "w+")
# for each line
for line in lines:
# if lines count in new file is 1000
if line_i == max_lines_count:
# clise created file
f.close()
i += 1
# create new file
f = open(dest_str % i, "w+")
line_i = 0
print("creating file %s\n" % (dest_str % i))
# write line in file
f.write(line)
line_i += 1
f.close()