从cmd运行powershell命令


32

我如何从cmd运行此命令:

powershell.exe“((get-process |?{$ _。Description -eq” Sysinter Process Explorer“}} |选择进程名称|输出文件$ env:APPDATA \ example.txt”

我仍然收到此错误:

您必须在'-eq'操作符的右侧提供一个值表达式。在第1行:char:37 +(get-process |?{$ _。Description -eq <<<< Sysinternals Process Explorer})| 选择进程名| 输出文件$ env:APPDATA \ example.txt + CategoryInfo:ParserError:(:) [],ParentContainsErrorRecordEx接收+ FullyQualifiedErrorId:ExpectedValueExpression


3
您的问题可能是您的引号内部。尝试删除它们,或者如果必须使用它们,请尝试使用此人:又名撇号。
DeathByTensors

2
警告 -请不要在您的帖子中使用ob亵内容。我已为您删除了它。请注意,其他用户可能已将您的帖子标记为“粗鲁或辱骂”,从而可能导致代表损失或被停职。请阅读善待:“避免使用粗俗的用语和任何带有性暗示的内容”
DavidPostill

Answers:


41
powershell -command "get-process | ? {$_.Description -eq 'Sysinter Process Explorer'} | select processname | out-file $env:APPDATA\example.txt"

基本上,您有一个powershell命令并将其粘贴在这些引号之间以从CMD调用它

powershell -command " #PasteCodeHere "

在这些引号内您必须使用,'否则它将中断您的命令参数。

编辑:附加信息:

很多时候,您会遇到以下情况: powershell -command "& 'somestuff'"

&用于调用文件。当仅使用命令&是不必要的时,当您要调用脚本时,应使用它。

powershell -command "& 'C:\foobar.ps1'"

您还可以powershell -file C:\file.ps1用来调用脚本


你是最好的人,<3它正在工作
Qassam Mahmoud

3
如果要执行的命令带有引号,则必须将其加倍。示例:powershell -command“ dir”“ c:\ Program Files”“”
Myobis

1
@myobis或您可以只使用单引号powershell -command " dir 'C:\Program Files' "
SimonS '18

1
@myobis实际上,双引号不起作用(在Windows 10 cmd中)。但是使用反斜杠转义确实做到了:powershell -command "dir \"c:\Program Files\" "
wisbucky

0

我将以下命令放入批处理文件中以重置Edge(有时会出现一些问题)。然后,该批处理文件在管理员级别上运行。请注意Powershell行中的三引号。此示例可能为那些试图从“ cmd”命令行运行powershell命令的人澄清一些事情。

@echo off
c:
cd %userprofile%\AppData\Local\Packages\Microsoft.MicrosoftEdge_8wekyb3d8bbwe
rmdir /s /q 
userprofile%\AppData\Local\Packages\Microsoft.MicrosoftEdge_8wekyb3d8bbwe
powershell "Get-AppXPackage -AllUsers -Name Microsoft.MicrosoftEdge | Foreach 
{Add-AppxPackage -DisableDevelopmentMode -
  Register"""$($_.InstallLocation)\AppXManifest.xml""" -Verbose}"

请注意Powershell行中的“三重”引号。顺便说一下,该行是一行,其中“ For Each”和“ -Register”用文字包装在此注释框中。尽管在批处理文件中,它应该是一行(如果在手动键入cmd会话中,则应该在命令行上)。

重要的是,在单词“ PowerShell”的反引号(“)开始和结束命令之后,已经在powershell命令中传递的任何内部反引号都转换为“三重”引号("""

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.