powershell - script - No se puede encontrar un parámetro posicional que acepte el argumento ''/'
el término no se reconoce como nombre de un cmdlet función archivo de script o programa ejecutable (2)
Estoy tratando de obtener los metadatos de un directorio y estoy obteniendo un error de que no se puede encontrar un parámetro posicional que acepte el argumento ''/'. No estoy seguro de cómo corregir esto?
$FileMetadata = Get-FileMetaData -folder (Get-childitem $Folder1 + "/" + $System.Name + "/Test" -Recurse -Directory).FullName
La forma más sólida en Powershell para construir una ruta cuando partes de la ruta se almacenan en variables es utilizar la ruta de acceso de combinación de cmdlet.
Esto también elimina la necesidad de usar "/".
Entonces en tu caso, sería:
$FoldersPath = Join-Path -Path $Folder1 -ChildPath "$System.Name/Test"
$FileMetadata = Get-FileMetaData -folder (Get-ChildItem $FoldersPath -Recurse -Directory).FullName
Necesitas hacer la concatenación en una subexpresión:
$FileMetadata = Get-FileMetaData -folder (Get-childitem ($Folder1 + "/" + $System.Name + "/Test") -Recurse -Directory).FullName
o incrusta las variables en una cadena como esta:
$FileMetadata = Get-FileMetaData -folder (Get-childitem "$Folder1/$($System.Name)/Test" -Recurse -Directory).FullName