使用powershell批量添加Qt的文件(生成pro)
想使用QtCreator作为编辑器编辑keil或者IAR的工程,需要生成.pro文件,于是使用powershell批量处理。
源码如下:
$incPath = dir -filter "*.h" -Recurse
$headList="",""
$pathList = "","" foreach($fpath in $incPath)
{
$headList+=$fpath.DirectoryName + "/" + $fpath.name
$headList = $headList -replace "\\","/"
} foreach($fpath in $incPath)
{
$pathList += $fpath.DirectoryName
$pathList = $pathList -replace "\\","/"
} $txtTemp=$headList[0] $QtProHeadFileOut="HEADERS +="
$QtIncludePath = "INCLUDEPATH +=" $workDir=get-location
$proName = gi $workDir
$workDir =$workDir -replace "\\","/"
$workDir += "/" $flag = 0 foreach($txt in $pathList)
{
if($txt -ne $pathList[0])
{
if($txt -ne $txtTemp)
{
$txtTemp=$txt if($flag -eq 0)
{
$flag = 1
$txt = $txt -replace $workDir , " "
}
else
{
$txt = $txt -replace $workDir , " "
} $t = $pathList[-1] -replace $workDir , " "
if($txt -ne $t)
{
$QtIncludePath += $txt + "\`n"
}
else
{
$QtIncludePath += $txt + "`n`n"
}
}
}
} $flag = 0
foreach($txt in $headList)
{
if($txt -ne $headList[0])
{
if($flag -eq 0)
{
$flag = 1
$QtProHeadFileOut += $txt -replace $workDir , " "
}
else
{
$QtProHeadFileOut += $txt -replace $workDir , " "
} if($txt -ne $headList[-1])
{
$QtProHeadFileOut += "\`n"
}
else
{
$QtProHeadFileOut +="`n`n"
} }
} $sourcePath = dir -filter "*.c" -Recurse
$sourceList="","" foreach($fpath in $sourcePath)
{
$sourceList+=$fpath.DirectoryName + "/" + $fpath.name
$sourceList = $sourceList -replace "\\","/"
} $sourceTemp=$sourceList[0] $QtProSourceFileOut="SOURCES +=" $flag = 0 foreach($txt in $sourceList)
{
if($txt -ne $sourceTemp)
{
if($flag -eq 0)
{
$flag = 1
$QtProSourceFileOut += $txt -replace $workDir , " "
}
else
{
$QtProSourceFileOut += $txt -replace $workDir , " "
} if($txt -ne $sourceList[-1])
{
$QtProSourceFileOut += "\`n"
}
else
{
$QtProSourceFileOut +="`n`n"
}
}
} $proString ="TARGET = " + $proName.name +"`nTEMPLATE = app`n`n"
$outfile = $proString + $QtProSourceFileOut + $QtProHeadFileOut + $QtIncludePath
$outfile | Out-File -Encoding ascii qt.pro
最后会在工作目录生成一个qt.pro的文件。
使用方法:
1,打开powershell(win + R,输入powershell)
2,粘贴上面代码
3,回车,回车
想要添加.cpp文件,只需要将
$sourcePath = dir -filter "*.c" -Recurse
改成
$sourcePath = dir -filter "*.cpp" -Recurse
就可以了。
使用powershell批量添加Qt的文件(生成pro)的更多相关文章
- 使用powershell批量添加Keil和IAR的头文件路径
在Keil和IAR的工程中,为了使文件结构清晰,通常会设置很多的子文件夹,然后将头文件和源文件放在不同的子文件夹中,这样就需要手动添加这些头文件夹的路径.当工程结构非常复杂时,文件夹的数量就非常多,特 ...
- Centos6配置samba服务器并批量添加用户和文件夹
一.需求 局域网内有若干用户,所有用户访问一个共享目录 每个用户在共享目录里有自己的文件夹 每个用户都可以读取其他人的文件夹 每个用户只能对自己的文件夹有写入权限 所有用户都属于filesgroup组 ...
- Qt项目管理文件(.pro)及其作用详解
http://c.biancheng.net/view/1819.html 在 Qt Creator 中新建一个 Widget Application 项目 samp2_1,在选择窗口基类的页面选择 ...
- VS批量添加多个文件
步骤 1.设置项目,显示所有文件.2.点击项目,右键在资源管理器中打开.3.将要导入的文件复制到对应的文件中去.4.在解决方案中就可以看到刚才添加的多个文件.5.在新加的文件夹上右键,包括在项目中.
- 利用Nuget打包添加tools下intsall.ps1【powershell脚本】修改.csproj文件
利用Nuget打包添加tools下intsall.ps1[powershell脚本]修改.csproj文件, 以设置1.项目-生成->输出->选择[XML文件文件] 2.项目->调试 ...
- centos7 lvm合并分区脚本初探-linux性能测试 -centos7修改网卡名字-jdk环境安装脚本-关键字查询文件-批量添加用户
1.#!/bin/bash lvmdiskscan | grep centos > /root/a.txt a=`sed -n '1p' /root/a.txt` b=`sed -n '2p' ...
- qt exe文件添加图标
Qt 怎样生成带图标的exe(转载) 一.问题描述 当我们在 Windows 下用 VS 生成 exe 程序时,如果窗口程序指定了图标,那么生成的 exe 程序便是指定的图标模样. 但是,当使用 Qt ...
- 「Python实用秘技04」为pdf文件批量添加文字水印
本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章「Python实用秘技」的第4期 ...
- Powershell 批量替换文件
Powershell 批量替换文件 ##作者:Xiongpq ##时间:2015-06-10 18:50 ##版本:2.0 ##源文件目录 ##源文件目录的所有文件都会覆盖目标目录的同名文件,源文件目 ...
随机推荐
- reborn to freelancer
I want to be a freelancer, so I come back to record all my efforts. I hope this will be a new start ...
- Node.js 教程 06 - 函数
前言: 本篇介绍的是Node.js中的函数,相对于上一篇会简单一点,其实和我们Javascript中的function无异. 好了,废话不多说了,我们进入正题吧. Node.js函数: [示例1:创建 ...
- Oracle学习笔记十二 子程序(存储过程、自定函数)和程序包
子程序 子程序:命名的 PL/SQL 块,编译并存储在数据库中. 子程序的各个部分: 1.声明部分 2.可执行部分 3.异常处理部分(可选) 子程序的分类: 1.过程 - 执行某些操作 2.函数 ...
- Linux运维之基础拾遗
第一部分 Linux常用文件管理命令 1.1 cp 文件复制 常用选项 -i # 覆盖之前提醒用户确认 -f # 强制覆盖目标文件 -r # 递归复制目录 -d # 复制符号链接本身而非其指向的源文件 ...
- shell脚本俄罗斯方块游戏
亲自测试了一个大牛写的shell脚本,感兴趣可以看看,效果如下:
- 简单轮播js实现
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8" ...
- IE6读取不到样式文件bug
早年的东东,贴出来充一下数吧~ 问题描述 在一个弹层优化需求中,完成了修改后,刷一下其他(除IE6外)浏览器,很给力,展现都一个样: 再刷下IE6,傻眼了: 初步分析 IE6问题多我知道,不过像这样的 ...
- [LeetCode] Perfect Rectangle 完美矩形
Given N axis-aligned rectangles where N > 0, determine if they all together form an exact cover o ...
- telent对端口检测状态分析
telnet基于TCP/IP协议通信的,把远程的shell反弹回本地! yum install -y telnet apt-get install telnet ###端口被封,有墙堵住 [root ...
- Python学习--Python基础语法
第一个Python程序 交互式编程 交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编写代码. linux上你只需要在命令行中输入 Python 命令即可启动交互式编程,提示窗 ...