如何从批处理文件中的SQLCMD生成的文件中删除标题下划线? 我试图自动化一个进程,将一个文件放在一个目录中,由另一个应用程序处理,它在标题下的虚线上扼流圈 例如:
1. Header1 Header2 header3 header4
2. ------ ------ ------ ------
3. Data1 Data2 Data3 Data4
4. Data1 Data2 Data3 Data4
5. Data1 Data2 Data3 Data4
6. Data1 Data2 Data3 Data4
我需要删除第2行。所以其他应用程序不会阻塞它。应用程序需要Headers,但在它下面的虚线处死掉。
答案 0 :(得分:1)
您可以使用find
或findstr
过滤掉不需要的行,例如:
findstr /v /c:"------ ------ ------ ------" your_filename
然后将输出重定向到文件或将其直接导入/管道到您的应用程序(如果它接受来自stdin的输入)
答案 1 :(得分:1)
使用sqlcmd,您只需在sqlcmd命令之后添加,即添加:
|findstr /v /c:"-"
像:
>sqlcmd -E -S <server> -Q "set nocount on;select Header1,Header2,header3,header4 from myTable"|findstr /v /c:"-"
答案 2 :(得分:0)
JerryG发布:
我在另一个有效的网站上找到了答案。我在SQLCMD调用中使用-h-1来关闭Headers,然后在构建我的文件的Select之前的sql中我放了一个Print'Header1 Header2等' HeaderX是实际的列名称,每个标题之间的选项卡作为文件输出是制表符分隔符。它工作,文件上传谢谢 - JerryG