windows下使用sed和tee命令

  最近須要在winowds slave上設置構建app和sdk,至於如何在windows slave上構建c/c++代碼生成sdk(dll,lib之類)和apk(exe文件),請參考個人另一篇博客,即https://www.cnblogs.com/zndxall/p/9177866.html,本博客不作介紹。html

  有些時候,咱們在打包的時候,會須要先修改文件配置,才能打包,好比,測試使用的測試環境驗證了,要發佈的話,確定參數要知足正式環境的,這時就須要修改配置文件。linux

  本博客介紹的是如何使用bat腳本就修改文件內容,即windows下的sed命令,我在查找如何下載sed.exe上花費了很多時間,後面發現我壓根不須要去下載sed.exe,由於我已經安裝了git bash,查找發現,git bash 的安裝目錄下就有sed.exe,因此,若是你還在花時間查找如何去下載一個64位或者32位的sed.exe的話,建議直接安裝一個git bash就能夠了,自帶sed.exe,好比個人路徑是C:\Program Files\Git\usr\bin\sed.exe。c++

  使用也很簡單,只要先設定sed.exe所在路徑就能夠了。好比,我當前目錄下有個文件test.txt,文件內容是1234,我想把它改爲5678,操做以下:git

  set sed="C:\Program Files\Git\usr\bin\sed.exe"windows

  %sed% -i s/1234/5678/g test.txtbash

  便可!app

至於其餘sed的使用,和linux下是同樣的,能夠參考linux下的。測試

  一樣,其餘命令也同樣,好比另一個tee,咱們知道linux的tee做用主要體如今:想把內容輸出在控制檯的同時有輸出到文件中,有的人會說,很簡單啊,echo 兩次就行了,echo 「test」 而後echo "test" > test.log就解決了,內容少的話,這沒問題,簡單不耗時,可是要是內容多呢,好比一個構建原本就要五分鐘了,你還再echo一次,時間過久了,這是tee就頗有用了,直接執行構架命令,好比:ui

  set tee="C:\Program Files\Git\usr\bin\tee.exe"orm

  %msbuild% %sln_file% /t:Rebuild /p:Configuration=%type%;Platform=%platform% | %tee% build_log.txt

便可。tee.exe也能夠採用一樣的辦法找到和設置。

  查找過濾文件內容以下:

  more build_log.txt |findstr "個錯誤"

因爲花費了很多時間找知足系統的sed.exe或者其餘命令,因此寫下這篇博客供你們參考,節省時間。

相關文章
相關標籤/搜索