如何告诉powershell dir命令查找文件夹?

时间:2015-08-07 16:06:53

标签: windows powershell

文件夹结构为:

--root
--root\source-code\
--root\powershell-scripts\

我需要\powershell-scripts文件夹中的以下方法来定位\source-code内的文件:

function Test($param)
{
    dir -Include ASourceCodeFile.txt -Recurse |
    % { SomeMethod $_ $param }
}

我错过了什么?

3 个答案:

答案 0 :(得分:1)

如果您在--root\powershell-scripts\中有一个脚本,并且想要引用--root\source-code\中的内容或者说get-content,则可以执行以下操作:

cd --root\powershell-scripts\
get-content '..\source-code\someFile.txt'

..\引用包含\source-code\的父目录,然后引用或从该目录中提取文件或脚本。

答案 1 :(得分:1)

$PSScriptRoot自动变量包含当前脚本所在目录的路径。使用Split-Path查找其父级(您的--root)和Join-Path以获取source-code文件夹的路径:

Join-Path -Path (Split-Path $PSScriptRoot -Parent) -ChildPath 'source-code'
PowerShell 3.0中引入了

$PSScriptRoot

答案 2 :(得分:0)

有点晚了,但也许对某人还是有帮助的

目录结构:

MyRoot\script\scriptrunning.ps1

config:

MyRoot\config.xml

scriptrunning.ps1读取xml文件:

[xml]$Config = Get-Content -path "${PSScriptRoot}\..\config\config.xml"