我试图递归搜索包含.exe的指定文件的目录,然后保存该目录路径以便稍后在变量中使用。Powershell保存ls搜索的目录路径?
我计算过,使用:
ls -recurse -filter "PsExec.exe" | sort name | ft directory,name
将显示包含.exe的目录。有没有一种方法可以将目录保存下来,以便以后可以使用它在我的脚本的另一部分中引用.exe文件? .exe将被保存在一个动态命名的文件夹中,这就是为什么我无法硬编码它的路径。
我试图递归搜索包含.exe的指定文件的目录,然后保存该目录路径以便稍后在变量中使用。Powershell保存ls搜索的目录路径?
我计算过,使用:
ls -recurse -filter "PsExec.exe" | sort name | ft directory,name
将显示包含.exe的目录。有没有一种方法可以将目录保存下来,以便以后可以使用它在我的脚本的另一部分中引用.exe文件? .exe将被保存在一个动态命名的文件夹中,这就是为什么我无法硬编码它的路径。
如果你只是想的完整路径保存到文件的单个实例,您可以使用
$path = ls -recurse -filter "PsExec.exe" | select -first 1 | select -expand FullName
或者,如果你想
$file = ls -recurse -filter "PsExec.exe" | select -first 1 | select Name,FullName,Directory
$file.Name
$file.FullName
$file.Directory
有没有办法让它搜索隐藏的文件夹呢? – fifamaniac04 2013-02-26 21:15:57
将'-Force'标志添加到'ls'调用中 – latkin 2013-02-26 22:27:54
可以保存多个属性保证了文件是独一无二的?或者它会返回一组文件? – SirPentor 2013-02-26 20:24:21
你可以在数组中传递结果'$ items = ls -recurse -filter“PsExec.exe”|排序名称| ft目录,名称' – Hiten004 2013-02-26 20:27:59
您不想将'format-table'的结果传递给'$ items',但其余部分是个好主意。 – SirPentor 2013-02-26 20:29:21