批处理学习笔记1:文件搜索

Windows下的批处理命令功能强大,熟练使用批处理命令能够有效地提高工作效率。
最近下载了openflow的C工程源码,想要对其进行代码分析。首先要根据.c文件生成.i也就是预处理文件。但是工程目录下有很多文件夹,.c文件分布在不同的文件夹下。逐个进行预处理效率太低,于是便希望使用批处理命令提高操作的效率。

在网上搜了下教程,发现批处理命令还是比较容易理解的。我的想法是先搜索指定目录,然后将所有的.c文件名输出到一个txt文件中。一共有两个bat文件,call.bat和getCFile.bat。
call.bat文件的内容如下

::调用getFile.bat脚本
::该脚本有两个参数,它会递归搜索第一个参数内的C文件,并将搜索到的C文件名称输入到第二个参数下的txt文件中
call getCfile.bat E:\Pangeneral\openflow-1.0.0 E:\Pangeneral\WindowsBatch

getCFile.bat文件的内容如下:

::递归搜索第一个参数(目录),将找到的C文件输入到第二个参数(目录)下的cFile.txt文件中
echo off > %2\cFile.txt
cd %1
for /r %%i in (*.c) do echo %%i >> %2\cFile.txt 
pause

echo off > %2\cFile.txt清空cFile.txt文件。
这里使用for指令搜索当前目录即’%1’参数的目录下的.c文件,/r表示递归搜索当前目录下所有的文件夹,然后将找到的文件完整路径输出到’%2”参数下的cFile.txt文件中。
执行完call.bat脚本后在WindowsBatch路径中中生成了cFile.txt文件,文件内容如下:

E:\Pangeneral\openflow-1.0.0\controller\controller.c  
E:\Pangeneral\openflow-1.0.0\lib\backtrace.c  
E:\Pangeneral\openflow-1.0.0\lib\bitmap.c  
E:\Pangeneral\openflow-1.0.0\lib\command-line.c  
E:\Pangeneral\openflow-1.0.0\lib\csum.c  
E:\Pangeneral\openflow-1.0.0\lib\daemon.c  
E:\Pangeneral\openflow-1.0.0\lib\dhcp-client.c  
E:\Pangeneral\openflow-1.0.0\lib\dhcp.c  
E:\Pangeneral\openflow-1.0.0\lib\dpif.c  
E:\Pangeneral\openflow-1.0.0\lib\dynamic-string.c  
...

这样,通过批处理命令便成功地搜索出了指定目录下的文件。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值