feat: 添加端口代理工具的添加命令功能
This commit is contained in:
@@ -12,6 +12,52 @@ internal static class Program
|
||||
else
|
||||
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":
|
||||
switch (args.Length)
|
||||
{
|
||||
|
Reference in New Issue
Block a user