我刚刚创建了一个Powershell函数并将其保存到ps1文件中.但是,当我尝试从powershell中执行它时,它将无法运行.
我已经通过输入以下命令更改为运行未签名代码的设置:
set-executionpolicy remotesigned
Run Code Online (Sandbox Code Playgroud)
功能是这样的:
Function listAllPaths([string]$fromFolder, [string]$filter, [string]$printfile){
Get-ChildItem -Path $fromFolder -Include $filter -Recurse -Force -Name > $printfile
}
Run Code Online (Sandbox Code Playgroud)
它的作用是创建一个文本文件,其中列出了某个文件的所有路径.
我把它直接放在c:\下并将其命名为listAllPaths文件,与函数相同.
当我在Powershell中输入以下命令时:
PS> listAllPaths.ps1 c:\ *.pdf testingPDF.txt
Run Code Online (Sandbox Code Playgroud)
我收到一个错误说:
术语"listAllPaths.ps1"未被识别为cmdlet,函数,可操作程序或脚本文件.验证该术语,然后重试.
我已经尝试了几件事,老实说,我不知道如何让它发挥作用?我期望在给定路径上创建文件,在本例中为c:\.该文件名为testingPDF.txt,内容为生成此文件.
谁能告诉我,我忘了这里.
不,谷歌没有回答所有问题.已经尝试过了.如果我还没有尝试过在线搜索引擎,我不会来这里问.
我们使用Microsoft Release Management 2013部署到Dev/Test/Prod.构建/部署服务器是MS2012.应用程序服务器是MS2008.我让它工作和部署,但昨天我开始收到这条消息.所有这一切都是使用"运行命令行"在Application Server上运行批处理文件,进行备份,设置Windows服务启动类型,停止服务等.如果我直接在Application Server上运行批处理文件,它只运行精细.我在本文中添加了更详细的日志记录,但没有收集其他信息以便进行调试.Powershell最近还没有更新到服务器上.
谁知道*.ps1文件应该在哪里?我在当地和服务器上搜索但却一无所获.有没有遇到过这个?
错误信息:
The term './RunCommandLine.ps1' is not recognized as the name of a cmdlet,
function, script file, or operable program. Check the spelling of the name,
or if a path was included, verify that the path is correct and try again.
At line:1 char:21
+ ./RunCommandLine.ps1 <<<< -FilePath '\\unc-path\batchfile.bat' -Arguments ''
+ CategoryInfo : ObjectNotFound: (./RunCommandLine.ps1:String) [] , CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
Run Code Online (Sandbox Code Playgroud)