2

Я хотел бы скопировать часть огромного текстового файла (десятки ГБ) в новый файл меньшего размера, начиная с определенного смещения в процентах до конца или с начала 5%. Можно ли это сделать с помощью простой команды в Windows?

1 ответ1

3

Если у вас Windows 10, вы можете использовать Ubuntu-Bash cmd, иначе вы можете использовать Unix-GNU-Utils-for-Windows

Установив его, вы сможете использовать команды unix head и tail и перенаправить вывод в новый файл.

  • head -100 (или любое количество строк)

  • tail -100 (или любое количество строк)

Чтобы получить количество строк в файле, вы можете использовать команду Unix wc -l

wc -l filename.txt

После того, как вы получите количество строк в этом файле, вы можете умножить число на 5/100, чтобы получить сумму 5%, и использовать этот результат в командах head или tail например:

head -100000 file1 > file2

мужская голова

head - output the first part of files
-n, --lines=[-]K 
print the first K lines instead of the first 10; with the leading '-', print all but the last K lines of each file

мужской хвост

tail - output the last part of files 
-n, --lines=K
    output the last K lines, instead of the last 10; or use -n +K to output lines starting with the Kth

туалет человек

wc - print newline, word, and byte counts for each file 
-l, --lines
    print the newline counts

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .