如何在 PowerShell 中执行 CMD 脚本?207


PowerShell 是一种功能强大的脚本语言,可用于管理 Windows 系统。它可以执行各种任务,包括与命令提示符 (CMD) 交互。在某些情况下,可能需要在 PowerShell 中执行 CMD 脚本。本文将指导您完成在 PowerShell 中执行 CMD 脚本的步骤,并提供一些示例供您参考。

方法 1:使用 cmd /c 命令

最简单的方法是在 PowerShell 中使用 cmd /c 命令执行 CMD 脚本。此命令将打开一个 CMD 实例并执行指定的命令。以下是如何使用此方法:```
powershell
Copy
Invoke-Command -ScriptBlock {cmd /c "echo Hello world"}
```

上述命令将输出 "Hello world"。

方法 2:使用 Start-Process 命令

另一种执行 CMD 脚本的方法是使用 Start-Process 命令。此命令将启动一个新进程并执行指定的命令。以下是如何使用此方法:```
powershell
Copy
Start-Process -FilePath -ArgumentList '/c "echo Hello world"'
```

上述命令也将输出 "Hello world"。

方法 3:使用 Invoke-Expression 命令

最后,您还可以使用 Invoke-Expression 命令来执行 CMD 脚本。此命令将执行作为字符串指定的命令。以下是如何使用此方法:```
powershell
Copy
Invoke-Expression 'cmd /c echo Hello world'
```

上述命令也会输出 "Hello world"。

传递参数

您还可以使用参数传递给 CMD 脚本。以下是如何使用 cmd /c 命令传递参数:```
powershell
Copy
Invoke-Command -ScriptBlock { param($arg) cmd /c "echo $arg" } -ArgumentList "Hello world"
```

上述命令将输出 "Hello world"。

获取输出

要从 CMD 脚本获取输出,可以使用 Invoke-Expression 命令并将结果存储在变量中。以下是如何获取 "Hello world" 输出:```
powershell
Copy
$output = Invoke-Expression 'cmd /c echo Hello world'
$output
```

上述命令将输出 "Hello world"。

示例

以下是使用 PowerShell 执行 CMD 脚本的一些示例:* 列出当前目录中的文件和文件夹:
```
powershell
Copy
Invoke-Command -ScriptBlock {cmd /c "dir"}
```
* 创建新文件:
```
powershell
Copy
Invoke-Command -ScriptBlock {cmd /c "echo Hello world > "}
```
* 删除文件:
```
powershell
Copy
Invoke-Command -ScriptBlock {cmd /c "del "}
```

通过遵循本指南,您将能够在 PowerShell 中轻松执行 CMD 脚本。这将使您能够利用 PowerShell 的强大功能和 CMD 脚本的灵活性。

2024-12-01


上一篇:如何高效运行 PowerShell 脚本

下一篇:SCCM 部署 PowerShell 脚本的详细指南