批處理實現以字符串/關鍵字刪選文檔內容

批處理實現以字符串/關鍵字刪選文檔內容


在這將介紹一種方式去刪選文檔內容,以取到我們需要的內容,其實就是用到find方式:

::通過關鍵字篩選文檔內容
@echo off
find /n "clayTest" %1 > A.txt
pause

其中ClayTest便是關鍵字,以此關鍵字會將處理文檔中含有ClayTest行的全部導到A.txt中。

測試:
1、首先新建一個find_str.bat寫下以上的內容;
2、新建一個B.txt,寫入內容:
This is a Test
This is line two
Line three ClayTest
This is line four
This is line ClayTest
This is last

3、將find_str.bat和B.txt放到同一目錄下,並打開cmd進入到該文件夾;
4、將find_str.bat作爲執行命令,將B.txt作爲參數,執行:find_str.bat B.txt,回車;


然後在同目錄下會生成一個A.txt文件夾,裏面就是刪選出來的內容,其中包括在源文件下該行的行數:



其中,需要學習的是有以下的參數可實現不同的功能:

參數:
 /V 顯示所有未包含指定字符串的行。

/C 僅顯示包含字符串的行數。

/N 顯示行號。

/I 搜索字符串時忽略大小寫。

/OFF[LINE] 不要跳過具有脫機屬性集的文件。

當文件中包含要查找的字符串時,將返回這個字符串所在位置的整行內容。默認情況下是區分大小寫的,若想要不區分大小寫就是用參數 /i ;

有時候,我們的需求並不是爲了查找到某個字符串,而是要檢測哪些行不含有特定的字符串,這個時候,可以使用開關/v,用法爲:find /v "ClayTest" >A.txt,它表示查找那些不含字符串ClayTest的行;

當然,上面的實現是將處理文件作爲參數在執行的時候加載的,我們也可以在代碼中去加載。比如說find "ClayTest" B.txt >A.txt 代碼實現將處理文件B.txt(同目錄)加載進來;

還有一點是find 支持查找通配符文件。如 find "1" *.txt。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章