在PowerShell中禁止Git命令的输出

时间:2019-08-17 18:00:30

标签: git powershell io-redirection

作为脚本的一部分,我正在运行git clean -fd。它通常会输出一堆已清理的文件。我想抑制此输出。

我尝试了git clean -fd | Out-Null,但似乎没有用。谷歌搜索没有返回git的选项来抑制输出,因此我可以使用另一种PowerShell方法吗?还是我做错了什么?可能值得注意的是,PowerShell脚本本身是从.bat文件中执行的。

2 个答案:

答案 0 :(得分:1)

只需添加选项-q

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>


<div id="colors-list">
    <label>
        <input type="radio" id="color1" name="colors-radio" value="1" checked="checked" data-color="color1">
        <span class="color1" title="color #1"></span>
    </label>
    <label>
        <input type="radio" id="color2" name="colors-radio" value="2" data-color="color2">
        <span class="color2" title="color #2"></span>
    </label>
    <label>
        <input type="radio" id="color3" name="colors-radio" value="3" data-color="color3">
        <span class="color3" title="color #3"></span>
    </label>
    <label>
        <input type="radio" id="color4" name="colors-radio" value="4" data-color="color4">
        <span class="color4" title="color #4"></span>
    </label>
</div>
<div class="box"></div>

答案 1 :(得分:1)

phd's helpful answer为当前案件提供了最佳解决方案。

关于... | Out-Null无效的原因:

Out-Null仅禁止显示来自外部程序(例如git stdout 输出,而不会禁止 stderr 输出。 / p>

git与许多CLI(控制台/终端程序)一样,不仅使用stderr流报告错误,而且还用于获取状态信息。 ,而不是任何数据。

要同时禁止 stdout和stderr输出,请使用*> $null

git clean -fd *> $null

注意: *> $null禁止显示所有输出流;虽然外部程序仅具有 2 (stdout和stderr),但是将*>$null应用于 PowerShell-native命令会使全部静音6 输出流。

有关更多信息,请参见about_Redirection