是否可以/如何使用某些cmdlet停止powershell?

是否可以/如何使用某些cmdlet停止powershell?,powershell,cmd,Powershell,Cmd,Powershell显然比cmd好得多,但它隐藏了基本功能。我通常用它来弄清楚如何在脚本中使用我想要的命令,但它破坏了大量的基本功能,如果遇到困难,我最终会同时使用这两个命令 今天,这是删除一个目录-rd或rmdir-这两个目录都在powershell中被破坏,而使用的是一个未记录的(从命令行)cmdlet删除项。不过,我似乎一直都会遇到这种情况——sc(因为在服务上胡闹);当您键入命令等时,在何处查找正在调用的程序 有趣的是,我实际上遇到了sc的问题,然后在谷歌上查找命令的位置,却发现它在po

Powershell显然比cmd好得多,但它隐藏了基本功能。我通常用它来弄清楚如何在脚本中使用我想要的命令,但它破坏了大量的基本功能,如果遇到困难,我最终会同时使用这两个命令

今天,这是删除一个目录-rd或rmdir-这两个目录都在powershell中被破坏,而使用的是一个未记录的(从命令行)cmdlet删除项。不过,我似乎一直都会遇到这种情况——sc(因为在服务上胡闹);当您键入命令等时,在何处查找正在调用的程序

有趣的是,我实际上遇到了sc的问题,然后在谷歌上查找命令的位置,却发现它在powershell中也不起作用!那是令人困惑的一天

在某些情况下,一旦您知道这是正在发生的事情,您可以键入完整的exe名称(例如,“where.exe”可以工作,而“where”则不能工作)

然而,rmdir的情况并非如此。尽管有趣的是,在cmd中键入“where rmdir”不起作用


所以。。。我的问题是-有没有办法在powershell中关闭(最好是所有)cmdlet,而只获取普通的内容?

没有必要在powershell中关闭cmdlet,因为这会破坏使用它的理由

大多数“正常”的东西都在那里,您可以使用
get alias
命令找到它们

C:\> get-alias

CommandType     Name
-----------     ----
Alias           % -> ForEach-Object
Alias           ? -> Where-Object
Alias           ?? -> Invoke-NullCoalescing
Alias           ac -> Add-Content
Alias           asnp -> Add-PSSnapin
Alias           cat -> Get-Content
Alias           cd -> Set-Location
Alias           chdir -> Set-Location
.....
..... AND A WHOLE LOT MORE!
如果缺少您真正想要的命令,则可以轻松添加新别名:

Set-Alias python2 "C:\Python27\python.exe"
为了避免每次都这样做,您可以简单地将其添加到您的启动配置文件中。只需在命令提示符中键入
$PROFILE
,它就会显示文件路径。如果它不存在,只需创建它,当您启动新会话时,将自动调用添加到顶部的任何powershell命令

最后一件事。所有命令都有文档记录,您只需使用两个就可以轻松地访问它们

只需在命令提示符中键入此命令,您就可以访问Powershell了

get-help get-command

get-command -noun Item
get-command -verb get

我刚刚意识到我的问题的答案隐藏在另一个答案的评论中:

在您运行的powershell中删除cmdlet

删除项目别名:某物

我可以通过使用Josh帖子中提到的个人资料确认您可以做到这一点,不过还有几个步骤:

默认情况下,您不能在powershell中运行脚本。您必须使用set ExecutionPolicy更改此设置

我通过使用管理员powershell并键入

set-executionpolicy bypass
这将允许您运行任何喜欢的脚本

然后在我的个人资料脚本中,我有如下行:

Remove-Item -force alias:sc

当这个脚本运行时,你不会看到错误,除非你有强制力,否则它不会做任何事情。

读一读:@Nacimota刚刚读了更多你发布的文章。谢谢-这是一个非常棒的链接。知道总是有cmd/c选项是非常有用的。对于get-help命令来说,这是一个很好的答案-尝试了各种/-帮帮。。。等我想我主要是用它来获得文件+程序名的自动完成,尽管我仍然错过了中优秀的自动完成功能bash@JonnyLeeds-Powershell将[TAB]完成大部分内容,您只需点击TAB即可循环浏览项目。另外,如果您还没有,请尝试使用最新的ISE(交互式脚本环境),它具有GUI风格的自动完成和搜索功能。PowerShell的自动完成非常棒,但您必须使用PowerShell的cmdlet才能真正利用它。@Josh cool我可能会看看。是的,powershell非常适合自动完成,但我真的很喜欢bash风格的拒绝自动完成,除非有一个答案(第一次按下),然后如果再次按下,它会显示所有可能的匹配。