powershell - 如何从.ps1文件运行powershell脚本?

标签 powershell cmd

我正在尝试自动执行一个简单的PS脚本(删除某个.txt文件)。显然,我是Powershell的新手:)
当我在shell中运行代码时,它可以完美运行。但是,当我将代码另存为.ps1并双击(或远程执行)时,它只是弹出一个窗口而没有执行任何操作。

我尝试将代码另存为.bat文件并在Windows命令行上执行,但是其行为相同:通过直接在提示符下编码可以工作,但不能通过执行.bat文件来工作。

$Excel = New-Object -ComObject Excel.Application
$Workbook = $Excel.Workbooks.Open('H:\codes\test1.xlsm')
$workSheet = $Workbook.Sheets.Item(2)
$str_name = $WorkSheet.Cells.Item(2,1).Text
Remove-Item -Path "H:\text files\$str_name.txt" -Force

我希望它可以通过双击它来工作,就像在shell或命令行中运行一样,但是我不知道为什么不这样做。

最佳答案

创建一个批处理文件,它指向您的.ps1文件。您可能需要以提升的权限运行批处理文件,具体取决于您的访问级别(登录的帐户将用于执行)。

例如。:

Powershell.exe -executionpolicy remotesigned -File  "C:\Path\script.ps1"

如果仍然无法解决问题,请通过CMD执行批处理文件(将路径(用引号引起来的路径复制)到CMD中),并让我知道响应。

关于powershell - 如何从.ps1文件运行powershell脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58524451/

相关文章:

powershell - 批处理文件未正确读取标志

sql - Powershell SQL 查询结果转换为 XML

powershell - 从 powershell 中的字符串中删除数字

windows - cmd 文件名作为 cmd.exe 中的命令

windows - 如何通过 START 命令运行多个命令

c# - 我可以指定一个 dll 以在 Powershell 中使用 New-Object 吗?

powershell - 无法读取文件内容

c - dev c++,c程序,每个字符都被一个正方形取代

powershell - 在Powershell中提示输入

windows - 如何获取包含插入符号 (^) 的密码,将其作为参数原封不动地传递给 Windows 批处理文件?