In powershell, one might think that calling a function would look like this:
FindReplaceMany_Directory($SubDir, $fileType, $recursive, $findArray, $replaceArray)
given a function like this:
#Find replace files of a certain file type in a given directory.
#$recursive = true to parse sub-dirs as well
#$fileType = ""*.*"", ""*.txt"", etc.
function FindReplaceMany_Directory($dir, $fileType, $recursive, $findArray, $replaceArray)
{
... (omitted) ...
}
This is not the correct syntax. But surprisingly, it still works and ONLY the first parameter gets a proper value. Everything else gets a null.
To properly call this function, do this:
FindReplaceMany_Directory $SubDir $fileType $recursive $findArray $replaceArray
Subscribe to:
Post Comments (Atom)
Great tid-bit... wish I found this sooner! Took me a while to realize the issue was calling convention.
ReplyDeletefunction buildit($x, $y) {
$configFile = ".\$x.$y.config.ps1"
# file can be empty, mine have a few vars
write-host $configFile
. "$configFile"
}
buildit("android", "dev")
outputs: The term '.\android dev..config.ps1' is not recognized