如何导出PUTTY会话列表?

有没有办法做到这一点?

或者我必须手动从registry手动每个logging?

出口

cmd.exe需要提示提示符:

只有会议:

 regedit /e "%USERPROFILE%\Desktop\putty-sessions.reg" HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions 

所有设置:

 regedit /e "%USERPROFILE%\Desktop\putty.reg" HKEY_CURRENT_USER\Software\SimonTatham 

电源shell:

只有会议:

 reg export HKCU\Software\SimonTatham\PuTTY\Sessions ([Environment]::GetFolderPath("Desktop") + "\putty-sessions.reg") 

所有设置:

 reg export HKCU\Software\SimonTatham ([Environment]::GetFolderPath("Desktop") + "\putty.reg") 

import

双击*.reg文件并接受导入。

替代方法:

cmd.exe需要提升命令提示符:

 regedit /i putty-sessions.reg regedit /i putty.reg 

电源shell:

 reg import putty-sessions.reg reg import putty.reg 

注意不要用您的用户名replace SimonTatham

注意 :它将在当前用户的桌面上创build一个reg文件。

注意 :它不会导出相关的SSH密钥。

当我尝试其他解决scheme时,我得到这个错误:

 Registry editing has been disabled by your administrator. 

Phooey,我说!

我将下面的PowerShell脚本放在一起,用于导出和导入PuTTY设置。 导出的文件是一个Windows .reg文件,如果您有权限,将导入干净,否则使用import.ps1加载它。

警告 :像这样搞乱registry是个坏主意,而且我真的不知道我在做什么。 使用下面的脚本需要您自担风险,并且准备好让IT部门重新映像您的机器,并询问您有关您正在做什么的不舒服问题。

在源机器上:

 .\export.ps1 

在目标机器上:

 .\import.ps1 > cmd.ps1 # Examine cmd.ps1 to ensure it doesn't do anything nasty .\cmd.ps1 

export.ps1

 # All settings $registry_path = "HKCU:\Software\SimonTatham" # Only sessions #$registry_path = "HKCU:\Software\SimonTatham\PuTTY\Sessions" $output_file = "putty.reg" $registry = ls "$registry_path" -Recurse "Windows Registry Editor Version 5.00" | Out-File putty.reg "" | Out-File putty.reg -Append foreach ($reg in $registry) { "[$reg]" | Out-File putty.reg -Append foreach ($prop in $reg.property) { $propval = $reg.GetValue($prop) if ("".GetType().Equals($propval.GetType())) { '"' + "$prop" + '"' + "=" + '"' + "$propval" + '"' | Out-File putty.reg -Append } elseif ($propval -is [int]) { $hex = "{0:x8}" -f $propval '"' + "$prop" + '"' + "=dword:" + $hex | Out-File putty.reg -Append } } "" | Out-File putty.reg -Append } 

import.ps1

 $input_file = "putty.reg" $content = Get-Content "$input_file" "Push-Location" "cd HKCU:\" foreach ($line in $content) { If ($line.StartsWith("Windows Registry Editor")) { # Ignore the header } ElseIf ($line.startswith("[")) { $section = $line.Trim().Trim('[', ']') 'New-Item -Path "' + $section + '" -Force' | %{ $_ -replace 'HKEY_CURRENT_USER\\', '' } } ElseIf ($line.startswith('"')) { $linesplit = $line.split('=', 2) $key = $linesplit[0].Trim('"') if ($linesplit[1].StartsWith('"')) { $value = $linesplit[1].Trim().Trim('"') } ElseIf ($linesplit[1].StartsWith('dword:')) { $value = [Int32]('0x' + $linesplit[1].Trim().Split(':', 2)[1]) 'New-ItemProperty "' + $section + '" "' + $key + '" -PropertyType dword -Force' | %{ $_ -replace 'HKEY_CURRENT_USER\\', '' } } Else { Write-Host "Error: unknown property type: $linesplit[1]" exit } 'Set-ItemProperty -Path "' + $section + '" -Name "' + $key + '" -Value "' + $value + '"' | %{ $_ -replace 'HKEY_CURRENT_USER\\', '' } } } "Pop-Location" 

对于非惯用代码的道歉,我对Powershell不是很熟悉。 改进是值得欢迎的!

如果您要在PuTTY Portable上导入设置您可以使用putty.reg文件。

只要把它放到这个path[path_to_Your_portable_apps]PuTTYPortable\Data\settings\putty.reg 。 程序将导入它

  1. 启动运行,然后键入打开下拉窗口:regedit

  2. 导航到,就像在Windows资源pipe理器中一样:
    HKEY_CURRENT_USER \ SOFTWARE \ SimonTatham

  3. 右键单击“SimonTatham”键(目录图标),select导出
    给文件一个名字(比如说)putty.reg,并保存到你的位置
    以后使用。
  4. closuresregistry编辑器

完成。

对于那些需要从离线registry文件导入Putty的人,例如,当你从崩溃的系统中恢复时,或者只是移动到一台新的机器上,并从旧的驱动器上抓取数据时,还有一个值得一提的解决scheme:

http://www.nirsoft.net/utils/registry_file_offline_export.html

这个伟大的免费控制台应用程序将导出整个registry或只有一个特定的registry项。 在我的情况下,我只是将registry文件从一个旧的驱动器复制到导出工具相同的目录,然后我在CMD窗口中使用以下命令和语法以pipe理员身份运行:

RegFileExport.exe NTUSER.DAT putty.reg“HKEY_CURRENT_USER \ Software \ SimonTatham”

导入.reg文件并启动Putty之后,所有内容都在那里。 简单而高效。

导入registry导出比上面提到的要容易得多。 +简单地说:

  1. 右键单击该文件
  2. select“合并”

像Win 7 Pro的冠军一样工作。

Bumerang将数据导入PuTTY portable解决scheme的改进。

简单地将导出的putty.reg (使用m0nhawk解决scheme)移动到PuTTYPortable\Data\settings\不起作用。 PuTTY便携式文件备份并创build一个新的空的。

要解决此问题, putty.reg两个putty.reg手动合并,将您要从导出的putty.reg迁移的configuration文件手动复制到下面几行中新创build的PuTTYPortable\Data\settings\putty.reg

 REGEDIT4 [HKEY_CURRENT_USER\Software\SimonTatham\PuTTY] "RandSeedFile"="D:\\Programme\\PuTTYPortable\\Data\\settings\\PUTTY.RND" 

对于那些不想乱用registry的人来说,已经创build了一个保存到文件中的putty的变体。 它位于: http : //jakub.kotrla.net/putty/

如果腻子团队将此作为主要分布的一个选项,那将是很好的。

使用此方法也可以执行批量configuration更改,例如更改所有会话字体。

  1. 导出到.reg
  2. 执行search并replace.reg
  3. 删除所有会话
  4. 导入新的.reg

从这里提取: http : //www.sysadmit.com/2015/11/putty-exportar-configuracion.html

@ m0nhawk发布的答案似乎不起作用,因为我在Windows 7机器上testing。 相反,使用以下脚本将导出/导入putty的设置:

 ::export @echo off set regfile=putty.reg pushd %~dp0 reg export HKCU\Software\SimonTatham %regfile% /y popd 

 ::import @echo off pushd %~dp0 set regfile=putty.reg if exist %regfile% reg import %regfile% popd 

例:
如何将腻子configuration和会话configuration从一个用户帐户转移到另一个用户帐户,例如创build新帐户并希望使用旧帐户的腻子会话/configuration

处理:
– 从旧帐户导出registry项到文件中
– 从文件导入registry项到新帐户

导出注册码 (从旧账户)

  1. login到旧账户,例如tomold
  2. 打开正常的“命令提示符”(不是pipe理员!)
  3. 键入“regedit”
  4. 导航到存储configuration的registry部分,例如[HKEY_CURRENT_USER \ SOFTWARE \ SimonTatham]并点击它
  5. 从文件菜单中select“导出”或单击鼠标右键(无线电button“选定的分支”)
  6. 保存到文件并命名它,例如'puttyconfig.reg'
  7. 再次注销

导入注册码:( 进入新账户)

  1. login到新的帐户,如汤姆

  2. 打开正常的“命令提示符”(不是pipe理员!)

  3. 键入“regedit”

  4. 从菜单中select“导入”

  5. select要导入的registry文件,例如'puttyconfig.reg'

  6. 完成

注意:
不要使用“pipe理员命令提示符”作为设置位于“[HKEY_CURRENT_USER …]”和registry将作为pipe理员运行,并显示该部分pipe理员用户,而不是为用户转移和/或。

m0nhawk的答案在Windows 10上不适用于我 – 它需要提升命令提示符并拒绝发送文件。

这工作,并没有要求boost:

 reg export HKEY_CURRENT_USER\Software\SimonTatham\PuTTY putty.reg 

我使用腻子连接pipe理器来创build会话数据库。 将数据库复制并导入到其他计算机很容易。

看到这个方便的指南