日常工作中常遇到大文件,无法打开、无法编辑的情况。
一般在 Linux
下可通过 split -l -d -a file.txt
的命令直接进行分割为多个文件。
但有时在 Window
下也有同样的需求,遂产生如何分割的想法?
一、批处理:按每行分割
将以下脚本与待处理文件复制同一目录下,双击执行即可生成。
@echo off& setlocal enabledelayedexpansion
for /f "delims=" %%1 in (test.csv)do set /a wind+=1&& >!wind!.csv echo %%1
二、批处理:按N行分割
可通过输入需要切分的行数,自动分割为多个文件。
@echo off
color 0a
echo Please enter a number:
set /p n=
powershell -c "$n=1;$m=1;gc 'test.csv'|%%{$f=''+$m+'.csv';$_>>$f;if($n%%%n% -eq 0){$m++};$n++}"
pause
三:批处理:按需分割
可输入不带后缀名的文件名,已经需要分割的行数,自动分割为多个文件。
@echo off & setlocal enabledelayedexpansion
set /p filename=Please enter file name without suffix:
set /p row=Enter a number:
set /a m=0,n=0
if exist %filename%-split-*.csv (del %filename%-split-*.csv)
for /f "delims=" %%l in (%filename%.csv) do (
set /a m=n/row+1,n+=1
set "line=%%l"
setlocal enabledelayedexpansion
echo !line!>>%filename%-split-!m!.csv
endlocal
)
pause
标签:分割,csv,批处理,echo,%%,Window,set,txt From: https://www.cnblogs.com/hider/p/16891724.html参考链接1:windows 批处理分割txt大文件
参考链接2:Windows批处理拆分txt文件