发表于

Windows上的小技巧

个人比较喜欢在Windows上开发,不仅仅是因为Windows平台上有很多生活上更方便的应用,平时工作中公司发的也是Windows电脑,出差用的也是Windows。尤其是去客户现场调试的时候,如果调试文件都在本地的话方便很多。

cmd

Windows上的老司机(driver)用于驱动脚本的,顺序、循环和选择的语法还是要掌握一下的。

findstr

很有用的命令,可以用选项/R开启搜索正则表达式。通常利用管道来搜索前一个命令的结果。

   ipconfig /all | findstr IPv4

可以查看本机的IPv4的地址。

dir

dir不仅可以用来列出特定目录下的目录,还能用来查找文件,这个非常方便!

   dir /s <file_name>

nbtstat

全称是NetBios over TCP/IP,可以用来查看对端的主机名称。公司的开发板是多人共同使用的,登陆上去后先用who查看哪些ip在连接,然后用nbtstat可以查看这个ip对应的是谁。

gnu

其实有一些工具在Windows上也是可以用的

  • make
  • sed

尤其是make工具,可以把公司的基于Linux的构建过程迁移到Windows上来。

sed工具对于写脚本也非常有用,有时候总是要去修改一些其他脚本或者配置文件的。

certutil

可以用来计算SHA值,调用方式是

   certutil -hashfile <file-paht> SHA512
   certutil -hashfile <file-paht> MD5

sc

管理Windows服务的。

   sc query|findstr SERVICE_NAME

可以查找所有的服务的名称。

msbuild

msbuild是微软的构建工具,通过解析基于xml格式的sln和vcproj等文件来编译代码。

  • property
  • item
  • target
  • task

property

关于msbuild的property选项,可以查看官方文档,基本上不用.Net的东西,所以只需要看对于All类型的项目的选项即可。

  • BaseIntermediateOutputPath: 中间生成物输出位置
  • BaseOutputPath: 输出位置
  • Configuration: 编译配置Debug/Release
  • DebugSymbols: 是否生成pdb调试文件
  • NoLogo: 没有编译器logo打印
  • OutputType: 输出类型Library/Exe/Module/Winexe,默认是Library
  • Platform: 目标平台Any/x86/x64

msbuild的选项可以放置在一个rsp文件中,默认在msbuild工具的目录里有一个MSBuild.rsp文件,也可以在sln或vcproj所在目录放置一个Directory.Build.rsp文件可以更新msbuild的编译选项。

item

用ItemGroup包起来的,有很多种形式,详见官方文档

target

用Target包起来的,有顺序,详见官方文档

task

sln文件是组织所有的vcproj文件的,而vcproj文件中有很多的task,具体task有哪些详见官方文档

其他

除此之外还有一些高级功能,大概列一下就不展开了。

  • Batching
  • Transforms
  • Multitargeting
  • Parallel Building
  • Logging

这些不常用的,待用到可以在官方文档上查找。