联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
@echo off echo. :: 我的文档累计文件总行数 :备份用注册表定位“我的文档”"%MDpath%"相对路径,适应每台机器。 for /f "tokens=2*" %%a in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" ^| findstr "Personal"') do set MDpath=%%b :创建“我的文档\Dirlist”目录_"%MDpath%\Dirlist" if not exist "%MDpath%\Dirlist" MD "%MDpath%\Dirlist" :写入文件 echo hao>"%MDpath%\Dirlist\hao.txt echo hao>>"%MDpath%\Dirlist\hao.txt echo hao>>"%MDpath%\Dirlist\hao.txt echo hao>>"%MDpath%\Dirlist\hao.txt echo hao>>"%MDpath%\Dirlist\hao.txt :显示路径 for /f "delims=" %%a in ("%MDpath%\Dirlist\hao.txt") do echo %%a echo. :累计文件总行数 for /f "delims=" %%a in ("%MDpath%\Dirlist\hao.txt") do set/a n+=1 ::set/a n=%n%-2 echo ============================= >>"%MDpath%\Dirlist\hao.txt" echo 总数为:%n% >>"%MDpath%\Dirlist\hao.txt" echo 总数为:%n% :打开文件 start notepad "%MDpath%\Dirlist\hao.txt" pause @echo off :: 附C:\boot.ini文件总行数 echo. for /f "delims=" %%a in (C:\boot.ini) do set/a n+=1 echo C:\boot.ini %n%行 echo. for /f " delims=:" %%i in ('findstr /n .* "C:\boot.ini"') do set var=%%i echo C:\boot.ini %var%行 ping/n 3 127.1>nul pause
@echo off echo. :: 我的文档累计文件总行数 :备份用注册表定位“我的文档”"%MDpath%"相对路径,适应每台机器。 for /f "tokens=2*" %%a in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" ^| findstr "Personal"') do set MDpath=%%b :创建“我的文档\Dirlist”目录_"%MDpath%\Dirlist" if not exist "%MDpath%\Dirlist" MD "%MDpath%\Dirlist" :写入文件 echo hao>"%MDpath%\Dirlist\hao.txt echo hao>>"%MDpath%\Dirlist\hao.txt echo hao>>"%MDpath%\Dirlist\hao.txt echo hao>>"%MDpath%\Dirlist\hao.txt echo hao>>"%MDpath%\Dirlist\hao.txt :显示路径 for /f "delims=" %%a in ("%MDpath%\Dirlist\hao.txt") do echo %%a echo. :累计文件总行数findstr /n_变量路径读取行数正确 :: http://bbs.bathome.cn/thread-474-1-1.html :: 批处理计算一文本文件的行数 for /f "tokens=1 delims=:" %%i in ('findstr /n .* "%MDpath%\Dirlist\hao.txt"') do set m=%%i :: 用findstr /n 打印了行号后,再用冒号作分割符,%%i的值就是行号 ::set/a m=%n%-2 :: set/am=%n%-2 则是去掉“%DATE% %time%” 和“===”二行数。 echo 总数为:%m%