Moris

请教一下.ps1 运行时如何让 powerShell 同时显示所运行命令的内容

  •  
  •   Moris · Aug 25, 2022 · 2597 views
    This topic created in 1491 days ago, the information mentioned may be changed or developed.

    我写了个 test.ps1 ,内容是

    echo TEST
    

    运行结果只有一个 TEST

    请问如何让 echo TEST 同时显示出来?

    12 replies  •  2022-10-04 17:46:25 +08:00
    icepie
        1
    icepie  
       Aug 25, 2022
    bash 之类的可以加个 -x

    bash -x xxx.sh 就能实现

    但是 pwsh 咱就不太清楚了
    masker
        2
    masker  
       Aug 25, 2022 via Android
    为何要重复发帖
    Moris
        3
    Moris  
    OP
       Aug 25, 2022
    @masker 因为 powershell 问题似乎发在 powershell 更合适,刚开始没想到
    yiyiwa
        5
    yiyiwa  
       Aug 25, 2022
    ```
    $cmd = "Write-Host XXXX"
    Write-Host $cmd
    Invoke-Exression $cmd
    ```
    since640
        6
    since640  
       Aug 25, 2022
    试试这个

    $path = $MyInvocation.MyCommand.Source
    Get-Content "$path"
    echo TEST
    since640
        7
    since640  
       Aug 25, 2022
    #6 我可能理解错了, 请忽视
    kaiger
        8
    kaiger  
       Aug 25, 2022
    试试 set -v

    不行的话简易换上 zsh: https://zhuanlan.zhihu.com/p/137251716
    kaiger
        9
    kaiger  
       Aug 25, 2022
    @kaiger #8

    kaiger
        10
    kaiger  
       Aug 25, 2022
    @kaiger #8

    简易 -> 建议
    lixinrui000
        11
    lixinrui000  
       Aug 25, 2022 via Android
    powershell 可以看做 C#的一个 shell DSL 。换而言之,相比于 bash 等脚本语言,它更类似 Python ,Python 的 PDB 调试器可以显示每一条命令,题主的这个需求可能也可以 power shell 的调试器来实现
    hxy100
        12
    hxy100  
       Oct 4, 2022
    在 ps1 脚本第一行加上 Set-PSDebug -Trace 1 即可(更详细的调试可以用 Set-PSDebug -Trace 2 );

    ----------
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   832 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 21:58 · PVG 05:58 · LAX 14:58 · JFK 17:58
    ♥ Do have faith in what you're doing.