• windows下使用sed和tee命令


      最近需要在winowds slave上设置构建app和sdk,至于如何在windows slave上构建c/c++代码生成sdk(dll,lib之类)和apk(exe文件),请参考我的另外一篇博客,即https://www.cnblogs.com/zndxall/p/9177866.html,本博客不做介绍。

      有些时候,我们在打包的时候,会需要先修改文件配置,才能打包,比如,测试使用的测试环境验证了,要发布的话,肯定参数要满足正式环境的,这时就需要修改配置文件。

      本博客介绍的是如何使用bat脚本就修改文件内容,即windows下的sed命令,我在查找如何下载sed.exe上花费了不少时间,后面发现我压根不需要去下载sed.exe,因为我已经安装了git bash,查找发现,git bash 的安装目录下就有sed.exe,所以,如果你还在花时间查找如何去下载一个64位或者32位的sed.exe的话,建议直接安装一个git bash就可以了,自带sed.exe,比如我的路径是C:Program FilesGitusrinsed.exe。

      使用也很简单,只要先设定sed.exe所在路径就可以了。比如,我当前目录下有个文件test.txt,文件内容是1234,我想把它改成5678,操作如下:

      set sed="C:Program FilesGitusrinsed.exe"

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

      即可!

    至于其他sed的使用,和linux下是一样的,可以参考linux下的。

      同样,其他命令也一样,比如另外一个tee,我们知道linux的tee作用主要体现在:想把内容输出在控制台的同时有输出到文件中,有的人会说,很简单啊,echo 两次就好了,echo “test” 然后echo "test" > test.log就解决了,内容少的话,这没问题,简单不耗时,但是要是内容多呢,比如一个构建本来就要五分钟了,你还再echo一次,时间太久了,这时tee就很有用了,直接执行构建命令,比如:

      set tee="C:Program FilesGitusrin ee.exe"

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

    即可。tee.exe也可以采用同样的办法找到和设置。

      查找过滤文件内容如下:

      more build_log.txt |findstr "个错误"

    由于花费了不少时间找满足系统的sed.exe或者其他命令,所以写下这篇博客供大家参考,节省时间。

    (其实上面的msbuil命令有自带的日志参数:%msbuild% %sln_file% %command_part% /m:8 /p:Configuration=%type%;Platform=%platform% -flp:logfile=build_log.txt

    ,/m:8 是表示8个cpu同时工作,提高效率)

  • 相关阅读:
    MFC/HALCON混合编程系列三_CFielDialog打开文件对话框
    MFC/HALCON混合编程系列二_打开两幅图_MFC布局_
    MFC/HALCON混合编程系列一_相机打开图像_简单处理_
    MFC C++ Cstring与string互转
    ImageMagik——开发篇(转)
    二维码解码器Zbar+VS2010开发环境配置(使用opencv库)
    select @@Identity 返回自动递增字段的值
    WebStorm设置左侧菜单栏背景和字体设置
    Chrome插件推荐
    WebStorm常用快捷键
  • 原文地址:https://www.cnblogs.com/zndxall/p/9319077.html
Copyright © 2020-2023  润新知