我在特定文件夹中设置了一些复杂的包(.dtsx)。很少有问题需要解决。我必须搜索几个表和存储过程。
现在我手动打开包并滚动控制流中的所有任务,以了解表的确切位置,但这很难做到。
我是否可以直接在包列表中搜索/查找给定的表/ sp。
For example,
List of packages in particular folder
p1.dtsx
p2.dtsx
p3.dtsx
p4.dtsx
p5.dtsx
Assume that the table named employee exist in p4.dtsx.
My input would be employee and the expected output would be p4.dtsx
答案 0 :(得分:3)
您可以使用powershell在一组文件中搜索字符串:
Get-ChildItem c:\temp\* -include *.dtsx | select-string employee
Get-ChildItem从目标文件夹中获取文件。此输出通过管道输出到Select-String,它可以为您提供字符串显示的确切行。请注意,它正在搜索xml,因此输出不可避免地有点冗长。 米
答案 1 :(得分:0)
除了Mark的回答,我还要强调SSIS包只是纯文本文件。您可以在记事本中打开它们。因此,搜索字符串的文本文件的任何方法都可以
另一个特别方便的解决方案是打开要在Visual Studio中搜索的包的代码视图,然后执行ctrl-f并选择搜索“所有打开的文件”的选项。