PowerShell 中 "catch [Exception]" 和 "catch" 之间有区别吗?

Is there difference between "catch [Exception]" and "catch" in PowerShell?

我有一个使用 WinSCP 通过 SFTP 传输一些文件的脚本。

脚本摘要:

$transferfiles = @("filename 1" "filename 2")

foreach ($file in $transferfiles) {
    $file
    $transferResult = $session.PutFiles($file, "/upload/TEST/", $False,$transferOptions)
    try {
        $transferResult.Check()
    }
    catch [Exception]{
        Write-Host "$file was not transferred."
    }
}

我只想知道是否需要使用[Exception]?为什么 catch 本身不起作用?

谢谢

catch [Exception] 等同于 catch.

所以你不需要使用catch [Exception]


我已将所有官方 WinSCP .NET assembly examples 修改为仅使用 catch