⌥+⌃AltPlusCtrl

PuTTY Keyboard Shortcuts

PuTTY is deliberately minimal — it's a terminal emulator and connection manager, not a full IDE or file manager, so its own keyboard shortcuts are sparse compared to almost any other tool in this list, and the bulk of what you'd call 'PuTTY shortcuts' are actually just whatever shell or program is running on the remote end interpreting your keystrokes normally. Where PuTTY does have genuine shortcuts of its own, they mostly relate to window and session management (opening a new session, adjusting the terminal window) plus a distinctive copy-paste model that differs from what most Windows software expects: selecting text with the mouse copies it automatically, and a right-click pastes, rather than requiring Ctrl+C/Ctrl+V, since those combinations are typically needed for their normal terminal control-sequence meanings inside an SSH session. Network administrators and developers who connect to a rotating set of Linux servers, routers, or embedded devices are PuTTY's core audience, and for that group the saved-session manager matters more day-to-day than any single keyboard shortcut, since reconnecting to a dozen previously configured hosts by double-clicking a saved name is faster than remembering hostnames or IP addresses across dozens of infrastructure targets. Newer users coming from a graphical SSH client with a more conventional Ctrl+C/Ctrl+V clipboard model are the ones most likely to be caught off guard by PuTTY's select-to-copy, right-click-to-paste convention, since it inverts an assumption that's otherwise nearly universal across Windows software. Restarting a dropped session and adjusting font size on the fly both matter for the realistic day-to-day experience of managing several simultaneous SSH connections, since a flaky network dropping one session shouldn't require abandoning and relaunching the whole saved-session workflow, and legible text matters more than it might seem when troubleshooting a server over a screen share with a colleague.

Session Management

ActionWindowsMacDescription
Open new PuTTY sessionCtrl+Shift+N (in some builds) or launch new instanceOpens a new PuTTY session window, either from a fresh launch of the application or, in builds that support it, directly from an existing session window.
Duplicate current sessionRight-click title bar > Duplicate SessionOpens a new session using the exact same connection settings as the current one, faster than manually re-entering host details for a second connection to the same server.
Save current settings as a sessionSession panel > SaveSaves the current host, port, and terminal configuration under a named session, so it can be reloaded later without retyping connection details.
Enable session loggingSession settings > Logging (before connecting)Configures PuTTY to record all terminal output to a local log file for the duration of the session, useful for keeping a record of a long troubleshooting session or command output for later review.
Restart a dropped sessionRight-click title bar > Restart SessionReconnects using the same session's settings after a connection was unexpectedly dropped, without needing to close the window and relaunch PuTTY from the saved sessions list again.

Copy Paste

ActionWindowsMacDescription
Copy selected textSelect with mouse (auto-copies)Simply selecting text with the mouse copies it to the clipboard automatically in PuTTY's default configuration, without needing any additional key press — a deliberate departure from the Ctrl+C convention.
Paste into terminalRight-clickPastes clipboard contents into the terminal session with a right-click by default, since Ctrl+V (like Ctrl+C) is reserved for its usual terminal control-sequence meaning within an active SSH shell.

Terminal Window

ActionWindowsMacDescription
Scroll terminal buffer upShift+Page UpScrolls back through the terminal's scrollback buffer to review earlier output that has scrolled off screen, without affecting the live session below.
Clear scrollback bufferRight-click menu > Clear ScrollbackClears the stored terminal history buffer, useful for freeing memory or clearing sensitive output from a long-running session.
Open terminal appearance settingsRight-click title bar > Change SettingsOpens PuTTY's configuration dialog mid-session, letting you adjust font, colors, or terminal behavior without disconnecting and reconnecting.
Set custom window titleSession settings > Window > Behaviour, or ESC ]0; sequenceSets a custom title for the PuTTY window, useful for distinguishing between several simultaneously open sessions to different servers when the default title (often just the hostname) isn't distinctive enough at a glance.
Increase/decrease terminal font sizeCtrl+Shift+Scroll (varies by build)Adjusts the terminal's font size on the fly, useful for temporarily enlarging text on a high-resolution display or when sharing your screen during a remote troubleshooting session.

Frequently Asked Questions

Why does PuTTY copy text automatically just by selecting it, instead of requiring Ctrl+C?

Ctrl+C is reserved for sending an interrupt signal to whatever process is running on the remote machine (stopping a running command), a fundamental Unix terminal convention. PuTTY's select-to-copy and right-click-to-paste model avoids that conflict entirely, following the older X Window System clipboard convention rather than the Windows-native Ctrl+C/Ctrl+V pattern.

Is PuTTY available on Mac or Linux, or only Windows?

PuTTY originated as a Windows-specific tool and remains most associated with Windows, though a Unix/Linux port exists; Mac users more commonly rely on the built-in Terminal app's native ssh command or third-party clients rather than a Mac build of PuTTY specifically, since Mac and Linux already ship with a capable SSH client out of the box.

Can I save connection settings in PuTTY so I don't have to retype the hostname every time?

Yes — PuTTY's session manager lets you save named sessions with hostname, port, and various terminal settings, which then appear in a list you can double-click to reconnect instantly, functioning as PuTTY's basic equivalent of the saved host lists found in more modern SSH clients like Termius.

Why does pasted text sometimes appear garbled or auto-execute commands unexpectedly?

Because a right-click paste sends the clipboard's full content directly into the terminal as if typed, pasting multi-line text that happens to include what looks like a complete shell command followed by a newline can cause that command to execute immediately once pasted, which is worth being cautious about when pasting content copied from an untrusted source into an active remote session.

Can PuTTY connect to servers using SSH key authentication instead of a password?

Yes — PuTTY supports key-based authentication through its companion tool PuTTYgen (for generating or converting keys) and the Pageant agent (for holding decrypted keys in memory during a session), a setup commonly used by developers who prefer key-based auth over typing a password for every connection, particularly for frequently accessed servers.

Is there a modern alternative to PuTTY with a similar free, lightweight feel?

Yes — tools like Windows Terminal (with its built-in SSH support), Termius, or WSL's native OpenSSH client have become popular modern alternatives, often preferred for tabbed multi-session support or a more polished UI, though PuTTY remains widely used simply because of its decades-long reputation for reliability and because so much existing documentation and tooling assumes its specific conventions.

Why does the terminal window sometimes resize unexpectedly when connecting to certain servers?

Some remote shell configurations or login scripts explicitly set the terminal size on connection, which can override whatever window size you'd manually set in PuTTY beforehand — this is server-side behavior rather than a PuTTY setting, and adjusting it usually requires editing the remote server's shell profile rather than anything in PuTTY's own configuration.

Can I tell my open PuTTY sessions apart if they all just show the default hostname title?

Yes, a custom window title can be set per session either through the session's Window > Behaviour settings before connecting, or via a terminal escape sequence sent from the remote shell itself, which is useful once you have several PuTTY windows open to different servers and the default hostname-based titles alone aren't distinctive enough to tell apart at a glance in the Windows taskbar.