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
这些不常用的,待用到可以在官方文档上查找。