批处理脚本, 读取文件并字符串替换
生活随笔
收集整理的這篇文章主要介紹了
批处理脚本, 读取文件并字符串替换
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2016年10月29日 18:40:44 星期六
場景:
從foxmail里導出的文件里取出需要的內容, 放入到另一個文件中, 并替換相應的字符為分號, 方便excel直接打開
注意:
1. rem: 為注釋當前行
2. ^: 為轉義符號
3. %%a: for循環中變量賦值的寫法
4. !a!: 程序執行過程中變量的賦值會延遲, 用感嘆號以及第二行的 setlocal 指令來消除這種延遲
5. !a:x=y!: 字符串替換的寫法, 將變量a中的x替換為y, 如果x是特殊字符需要用^轉義, 如果不寫y就是將x替換為空
6. 直接輸出并追加到文件xxx.log中用文本編輯器打開會有一些亂碼, 但是漢字大都沒問題,
如果直接用Excel打開中文就可能出現亂碼
腳本源代碼:
@echo off setlocal EnableDelayedExpansion rem echo %cd%for %%s in (*.eml) do (rem findstr "log_user_trade" %%s >> stat.logecho %%sfindstr "log_user_trade" %%s >tmp.log rem 匹配出需要的行set /p line=<tmp.log rem 放入臨時文件中set a=!line:^^=;! rem 替換字符,將^替換為; ^在bat腳本中是轉義字符的意思set b=!a:^|=;!set c=!b:^@@=;!set d=!c:^"=! rem 將字符串"替換為空set e=!d:^>=!set f=!e:^<td^>=!echo !f:^</td^>=! >> stat.log ) echo complete pause?
總結
以上是生活随笔為你收集整理的批处理脚本, 读取文件并字符串替换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: clr enabled Server C
- 下一篇: Java(静态)变量和(静态)代码块的执