比Xshell还好用的终端软件——MobaXterm21.5最新破解版

前言

最近看到同事在用MobaXterm,在看了看自己的Xshell,顿时感觉弱爆了。

界面截图

图片[1]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog
图片[2]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog

下载地址

  • 文件解压密码:www.iculture.cc

破解方法

解压后打开MobaXterm_installer_21.5.msi

图片[3]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog

然后打开MobaXterm_Keygen_v1.4_By_DeltaFoX.exe进行破解

图片[4]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog

我们这里要填215,如果你用的是其他版本的则需选择Get Version from File(从exe文件自动获取相关版本号)

图片[5]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog

然后点Generate完成破解

图片[6]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog

Sessions导入

程序本身已经支持了

  • SCRT sessions
  • Exceed sessions
  • PuTTY sessions
  • MRemote sessions
  • PuTTYCM sessions
  • SuperPuTTY sessions
  • WSL sessions
图片[7]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog
  • 解决Xshell的Sessions导入问题

如何将Xshell的Sessions文件导入MobaXterm

这里使用Python写了脚本,可以通过脚本导入,创建.py文件

from configparser import RawConfigParser
from pathlib import Path
from copy import deepcopy
import sys

import os

PATTERN1 = '{name}=#{icon}#{protocol}%{host}%{port}%{user}'
PATTERN2 = '#MobaFont%10%0%0%0%15%236,236,236%30,30,30%180,180,192%0%-1%0%%xterm%-1%-1%_Std_Colors_0_%80%24%0%1%-1%<none>%%0#0#{description} #-1'

CLASS = {
    'SSH': {
        'data':
            {'name': '', 'icon': 109, 'protocol': 0, 'host': '', 'port': 22, 'user': '', 'keyfile': '',
             'description': ''},
        'pattern':
            PATTERN1 + '%%-1%-1%%%22%%0%0%0%{keyfile}%%-1%0%0%0%%1080%%0%0%1' + PATTERN2
    },
    'TELNET': {
        'data':
            {'name': '', 'icon': 98, 'protocol': 1, 'host': '', 'port': 23, 'user': '', 'description': ''},
        'pattern':
            PATTERN1 + '%%2%%22%%%0%0%%1080%' + PATTERN2
    },
    'FTP': {
        'data':
            {'name': '', 'icon': 130, 'protocol': 6, 'host': '', 'port': 21, 'user': '', 'description': ''},
        'pattern':
            PATTERN1 + '%-1%%0%0%0%0%%21%%%0%0%-1%0%0%0%' + PATTERN2
    },
}


def convert(source_dir, output):
    open(output, 'w').write('')
    for i, objs in enumerate(os.walk(source_dir)):
        root, dirs, files = objs
        open(output, 'a').write('[Bookmarks{}]\n'.format('_{}'.format(i) if i else ''))
        open(output, 'a').write('SubRep={}\n'.format(root))
        open(output, 'a').write('ImgNum=41\n')
        dir_path = Path(root)
        for file_name in files:
            if not file_name.endswith('.xsh'):
                continue
            file_path = dir_path / file_name
            # ConfigParser() 不能解析含 % 的字串
            config = RawConfigParser()
            config.read_file(open(file_path, encoding='utf-16'))
            protocol = config.get("CONNECTION", "Protocol")
            if protocol in ['SSH', 'FTP', 'TELNET']:
                d = deepcopy(CLASS[protocol]['data'])
                d.update({
                    'name': file_path.stem,
                    'host': config.get("CONNECTION", "Host"),
                    'port': config.get("CONNECTION", "Port"),
                    'user': config.get("CONNECTION:AUTHENTICATION", "UserName"),
                    'description': config.get("CONNECTION", "Description"),
                })
                open(output, 'a').write(CLASS[protocol]['pattern'].format(**d) + '\n')
            else:
                print('unknown {}, {}'.format(protocol, file_path))
        open(output, 'a').write('\n')


if __name__ == '__main__':
    if len(sys.argv) != 2:
        print('Usage: python XShell2MobaXterm.py <XShell_Sessions_dir>')
    elif not Path(sys.argv[1]).is_dir():
        print('Error: {} is not a valid source'.format(sys.argv[1]))
    else:
        source_dir = sys.argv[1]
        output = 'Xshell2MobaXterm.mxtsessions'
        convert(source_dir, output)
        print('Export {} to {} done.'.format(source_dir, output))

先打开Xshell找到Sessions文件路径

图片[8]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog
图片[9]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog

返回上一级菜单之后,这个就是Xshell的Sessions存储路径

C:\Users\66396\Documents\NetSarang Computer\7\Xshell\Sessions

图片[10]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog

但是上面的文件路径中有空格,这里的代码没有对空格进行解析,因此专家建议:

Sessions文件拷贝到C:\diy-scripts\bak\Sessions

图片[11]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog

然后运行下面的命令

python XShell2MobaXterm.py C:\diy-scripts\bak\Sessions

这里看到文件已经转换成功了!

图片[12]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog
图片[13]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog

其实这里分析可以看出来,这个文件只是做了个链接,链接到之前的Sessions文件

接下来我们尝试导入

图片[14]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog

选择Xshell2MobaXterm.mxtsessions

可以看到全部都导入进来了,是不是体验还不错!

图片[15]-比Xshell还好用的终端软件——MobaXterm21.5最新破解版-FancyPig's blog
© 版权声明
THE END
喜欢就支持一下吧
点赞24赞赏 分享
评论 共10条

请登录后发表评论