Powershell 烦人地要求我按 Enter 键确认。如何仅通过单击即可确认?

Powershell 烦人地要求我按 Enter 键确认。如何仅通过单击即可确认?

例如我有一个删除命令:ls|rm -Confirm

对于每个文件,我都必须按“y”并按顺序输入。在大多数 shell 中,只需按“y”就足够了。如何在 PowerShell 中避免这种情况?

更新:这与我编写的脚本无关。这与其他人编写的脚本有关。我需要任何可以让我避免在我的系统中的所有脚本中使用两个密钥的黑客技术。

答案1

-Confirm如果你不想被提示,为什么要使用?那就是-Confirm:强制确认提示。

如果您想强制执行该操作而不提示,那么请使用该-Force选项。


根据您的评论,我有两个解决方案。

  1. 不要按 Y,而是按 A。这将对当前命令中的所有项目响应 Y。

  2. 编写脚本以便您自己处理确认。例如:

    $todelete = ls
    $choice = ""
    while ($choice -notmatch "[y|n]"){
        $choice = read-host "Do you want to continue? (Y/N)"
    }
    
    if ($choice -eq "y"){
        $todelete | rm -Force
    }
    else
    {
        write-host "Canceled!"
    }
    

相关内容