gpt4 book ai didi

c# - 从 c# 或 .cmd 提示符执行 .sh

转载 作者:行者123 更新时间:2023-11-30 23:01:07 26 4
gpt4 key购买 nike

我想从 c# 或通过命令提示符(我可以通过 c# 进一步执行它)执行以下 shell 脚本命令“.sh”

我通常使用以下命令来执行我的.sh 文件。

我手动执行的命令是

a) 打开 cygwin(依次调用 C:\cygwin\bin\mintty.exe -i/Cygwin-Terminal.ico -)。这将打开 cygwin 控制台

b) 转到我需要使用

执行 .sh 文件的工作目录
cd <dir in unix format>

c) 执行.sh脚本文件

sh <path to my .sh file in unix format>

但是,我想使用命令行/c# 自动执行这些步骤(即在不打开控制台/应用程序(如 mintty.exe 或 bash.exe)的情况下执行)

注意:How do i start Mintty and run a script file? 中提供的示例没有帮助我,因为它们在打开后没有执行我的命令就关闭了。

最佳答案

如果您还想要 mintty 窗口(在使用 vt100 转义序列时很有用),您可以使用批包装文件。

@echo off
setlocal EnableDelayedExpansion
set "script=%~1"
set "cygwin=C:\cygwin64\bin"
set "path=!cygwin!;!path!"
mode con lines=80 cols=120

REM C:\cygwin\bin\mintty
start "cygwin window" !cygwin!\mintty.exe -i /cygdrive/c/Windows/System32/compstui.dll,53 --exec "!script!"

您应该(至少)将 cygwin/bin 目录作为路径变量的前缀,否则您会得到奇怪的结果

-i ...compstui.dll,53 仅用于更改任务栏/窗口中的图标

关于c# - 从 c# 或 .cmd 提示符执行 .sh,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51244045/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com