feat: 添加端口代理工具的添加命令功能
This commit is contained in:
@@ -12,6 +12,52 @@ internal static class Program
|
|||||||
else
|
else
|
||||||
switch (args[0])
|
switch (args[0])
|
||||||
{
|
{
|
||||||
|
case "add":
|
||||||
|
switch (args.Length)
|
||||||
|
{
|
||||||
|
case 6:
|
||||||
|
var targetType = PortProxyUtil.GetPortProxyTypeByString(args[1]);
|
||||||
|
if (targetType == null)
|
||||||
|
{
|
||||||
|
AnsiConsole.MarkupLine(
|
||||||
|
"[red]参数错误[/][gray]:[/] [white]接受的第一个参数为 v4tov4, v4tov6, v6tov6, v6tov4[/]");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!ushort.TryParse(args[3], out var listenPort))
|
||||||
|
{
|
||||||
|
AnsiConsole.MarkupLine(
|
||||||
|
"[red]参数错误[/][gray]:[/] [white]接受的第三个参数为 0 - 65535[/]");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!ushort.TryParse(args[5], out var targetPort))
|
||||||
|
{
|
||||||
|
AnsiConsole.MarkupLine(
|
||||||
|
"[red]参数错误[/][gray]:[/] [white]接受的第五个参数为 0 - 65535[/]");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var item = new PortProxyItem
|
||||||
|
{
|
||||||
|
Type = (PortProxyType)targetType,
|
||||||
|
ListenAddress = args[2],
|
||||||
|
ListenPort = listenPort,
|
||||||
|
TargetAddress = args[4],
|
||||||
|
TargetPort = targetPort
|
||||||
|
};
|
||||||
|
var result = PortProxy.Add(item);
|
||||||
|
AnsiConsole.MarkupLine(string.IsNullOrEmpty(result)
|
||||||
|
? "[green]添加成功[/]"
|
||||||
|
: $"[red]添加失败[/][gray]:[/] [white]{result}[/]");
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
AnsiConsole.MarkupLine(
|
||||||
|
"[red]参数错误[/][gray]:[/] [white]接受的参数为 <v4tov4/v4tov6/v6tov6/v6tov4> <监听地址> <监听端口> <目标地址> <目标端口>[/]");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
return;
|
||||||
case "list":
|
case "list":
|
||||||
switch (args.Length)
|
switch (args.Length)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user