a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > BAT > 正文

把首行和尾行互換的批處理

2020-07-26 20:25:59
字體:
來源:轉載
供稿:網友
然后在新文本的首行寫入提取到的最后一行,用 findstr 語句過濾掉原文本的第一行和最后一行,在最后一行 之后添加提取到的第一行。
復制代碼 代碼如下:

@echo off
:: 目的:把首行和尾行互換
:: 思路:
:: 提取第一行和最后一行內容(若首行和最后一行是空行,則提取到的是非空的第一行和非空的最后一行內容),
:: 然后在新文本的首行寫入提取到的最后一行,用 findstr 語句過濾掉原文本的第一行和最后一行,在最后一行
:: 之后添加提取到的第一行。
:: 因為 findstr 處理最后一行有條件限制,所以先在最后一行之后生成一個空行,以保證提取的準確性
:: 注意:請保證test.txt中沒有敏感字符,沒有內容重復的行,并且首行不能為空
::    
::     
copy test.txt test.bak>nul
echo.>>test.txt
set num=0
setlocal enabledelayedexpansion
for /f "delims=" %%i in (test.txt) do (
set str=%%i
set /a num+=1
if !num! equ 1 set var=%%i
)
>test_.txt echo.%str%
findstr /b /e /v /c:"%str%" /c:"%var%" test.txt>>test_.txt
>>test_.txt echo.%var%
move test.bak test.txt
start test_.txt
goto :eof

@echo off
:: 可以處理首行為空、行內容重復的情況,
:: 注意:因為 findstr /n 統計行數的時候,會忽略最后一個空行
:: 所以,若在最后有空行的話,請保證空行的個數大于1
findstr /n .* test.txt>tmp1.txt
for /f "tokens=1* delims=:" %%i in (tmp1.txt) do (
if %%i equ 1 set str=%%j
set line=%%i&set var=%%j
)
>tmp2.txt echo %line%:%var%
findstr /b /v /c:"1:" /c:"%line%:" tmp1.txt>>tmp2.txt
echo 1:%str%>>tmp2.txt
echo.>>tmp2.txt
cd.>result.txt
for /f "tokens=1* delims=:" %%i in (tmp2.txt) do >>result.txt echo.%%j
del /q tmp1.txt tmp2.txt
start result.txt
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 麻豆精品久久 | 99久久99久久精品免费看蜜桃 | 69久久99精品久久久久婷婷 | 亚洲精品久久 | 成人av播放 | 久久草视频 | 33eee在线视频免费观看 | 亚洲国产精品一区二区三区 | 精品久久久久久久久久久久 | 欧美亚洲视频 | 天天天天天天操 | 日韩国产精品一区二区三区 | 国产激情视频在线 | 日韩精品一区在线视频 | 国产成人精品免高潮在线观看 | 欧美一区| 国产成人精品网 | 国产一二三区不卡 | 亚洲在线免费观看 | 超碰人人艹 | 97av在线| 亚洲91在线 | 久久av网| 欧美成人免费一级人片100 | 欧美综合第一页 | 亚洲成人免费视频在线观看 | 婷婷色播婷婷 | 亚洲网站久久 | 日日精品 | 久草久 | 黄色小电影网址 | 色伊人网 | 久久综合色视频 | 亚洲精区 | 欧美亚洲天堂 | 亚洲 欧美日韩 国产 中文 | 91久久精品一区二区别 | 欧美第一页 | 曰韩三级 | 久久久久久99精品 | av电影手机在线看 |