alt text
А вот долгожданный вывод с покета.
Работаем дальше!
Если хочешь отбить свой минус, пиши!
@Fox файл хорошо что не бинарный, текстовый, формата
1. индекс:email:username:хеш:ещехеш\n
2. индекс:email:username:хеш:ещехеш\n
3. индекс:email:username:хеш:ещехеш\n
ну я его нарайзаю кусками, а конец 100метрового куска окажется в середине строки, это если хорошо, это мне надо в конце куска недостроку выкидывать и смещение для следующего куска не 100 метров делать а высчитывать чтобы с той недостроки началось с начала
а вот нашол да
@Fox said in Работа с большими списками (файлами):
@lirik Если так принципиально именно разбить, то можно с помощью командной строки..
Запустить процессsetlocal enabledelayedexpansion set q=0 set N=100 for /F "delims= " %%i in (file.txt) do ( set /a q+=1 if !q! GTR !N! set /a N+=100 @echo %%i >> file!N!.txt )file.txt имя файла
цифра 100 это количество строк на которое разбивать файл (меняется в двух местах).
но это слишком много, 30гигов чето такой бактник резать не захотел
поэтому добавлю, если файл действительно большой с БОЛЬШОЙ буквы БЫ
ищем awk/gawk
и так бат
::строк
set $n=10000
::файл
set $file=file.txt
for /f "delims=" %%i in ('^<%$file% find /v /c ""') do set /a $m=100+%%i/%$n%
for /l %%i in (100,1,%$m%) do set /a $i=%%i& call :sub
:sub
(awk -v S=%$i:~-2% -v N=%$n% "{L+=1;if (L>S*N && L<S*N+N+1) {print $0}}"
) <%$file% >list%$i:~-2%.txt
и терпения
нет нет нет, подойдет только для файлов до половины гига