首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >运行非PowerShell脚本的C# PowerShell

运行非PowerShell脚本的C# PowerShell
EN

Stack Overflow用户
提问于 2014-01-11 08:36:24
回答 1查看 614关注 0票数 0

我正在尝试在powershell中运行tcl脚本,以便可以利用powershell的一些功能,即tee功能,在控制台中显示脚本输出,并将其实时记录到Windows中的文件中。

问题是我需要调用tcl解释器(tclsh),并为它提供带有参数--arg1 arg1 --arg2 arg2的tcl脚本"C:\myScript.tcl" ...

因此,我可以在cmd进程中运行的命令的形式如下:

代码语言:javascript
运行
复制
tclsh "C:\myScript.tcl" --arg1 arg1 --arg2 arg2

我尝试创建一个新进程并启动powershell,如下所示:

代码语言:javascript
运行
复制
System.Diagnostics.ProcessStartInfo procStartInfo =
                new System.Diagnostics.ProcessStartInfo("powershell", command);

其中命令为tclsh "C:\myScript.tcl" --arg1 arg1 --arg2 arg2

代码语言:javascript
运行
复制
System.Diagnostics.ProcessStartInfo procStartInfo =
                new System.Diagnostics.ProcessStartInfo("cmd", command);

其中命令为/k powershell.exe tclsh "C:\myScript.tcl" --arg1 arg1 --arg2 arg2

但是这些都不起作用。我要么得到tclsh.exe : Parameter -command is specified already.,要么它什么都不能运行。

实现这一目标的最佳方法是什么?理想情况下,我希望能够执行以下操作:

代码语言:javascript
运行
复制
tclsh "C:\myScript.tcl" --arg1 arg1 --arg2 arg2 | tee "C:\myOutFile.txt"

我对其他建议持开放态度。我知道可以下载和安装windows实用程序来执行tee功能,但我不希望必须安装任何第三方工具来执行此操作。

想法??

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2014-01-11 08:45:10

正在运行

代码语言:javascript
运行
复制
powershell "&{ tclsh --arg1 arg1 --arg2 arg2 | Tee-Object C:\myoutfile.txt }"

应该可以工作,除此之外,您通常在C:\上没有写权限。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21056994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档