1. Core Purpose & Concepts
- Core Purpose: Use the
<span>nano</span>simple, user-friendly terminal text editor to create and modify text files directly in the command line interface without launching a graphical program. - Core Terminology:
<span>nano</span>: A command-line text editor that is pre-installed in most Linux distributions and suitable for beginners.- Terminal-based editor: An editor that runs entirely within the terminal window. The advantage is low resource usage and the ability to be used on remote servers without a graphical interface.
- Keyboard Shortcuts: The method of performing all operations in Nano (such as saving, exiting, searching).
<span>^</span>(Caret / Hat Symbol): In Nano’s bottom toolbar, this symbol represents the<span>Ctrl</span>key on the keyboard. For example,<span>^X</span>means<span>Ctrl + X</span>.<span>M-</span>(Meta Key): This symbol represents the “Meta” key. Depending on the keyboard layout, it is usually the<span>Alt</span>key, and sometimes it can also be the<span>Esc</span>or<span>Cmd</span>key.
2. Key Operations & Shortcuts
Starting Nano
<span>nano [filename]</span>: Opens a file for editing. If the file does not exist, Nano will create a new file with the same name.
Core Keyboard Shortcuts
| Function | Shortcut | Description |
|---|---|---|
| Exit | <span>Ctrl + X</span> |
Close Nano. If there are unsaved changes, it will prompt you to save. |
| Write Out | <span>Ctrl + O</span> |
Save the current file. Nano will ask you to confirm the filename to save. |
| Where Is | <span>Ctrl + W</span> |
Search for specified text in the file. By default, it is case-insensitive. |
| Replace | <span>Ctrl + \\</span> (Backslash) |
Search and replace text. It will ask one by one whether to replace or provide an option for all replacements. |
| Cut Text | <span>Ctrl + K</span> |
Cut (delete) the entire line of text where the cursor is located. |
| Uncut Text | <span>Ctrl + U</span> |
Paste the content that was last cut with <span>Ctrl + K</span>. |
| Go to Line | <span>Ctrl + _</span> (Underscore) |
Pop up a prompt to enter the line number and column number, then quickly jump to that position. |
| Get Help | <span>Ctrl + G</span> |
Display Nano’s built-in help documentation. |
| Show Current Position | <span>Ctrl + C</span> |
Display information such as the line number, column number, and character position of the cursor. |
Search Options
After pressing <span>Ctrl + W</span> to enter search mode, you can use <span>Alt</span> key combinations to modify the search behavior:
<span>Alt + C</span>: Toggle Case Sensitive search mode.<span>Alt + B</span>: Switch to Backwards search.
3. Practical Use Cases
- Quickly Edit Configuration Files: Modify system or application configuration files quickly without leaving the terminal, such as
<span>.bashrc</span>or<span>/etc/nanorc</span>. - Write Scripts: Create and edit Shell scripts, Python scripts, etc., directly in the server or local terminal.
- Remote Server Management: When connected to a remote server without a graphical interface via SSH, Nano is one of the main tools for editing files because it is lightweight and widely available.
- Take Notes: While working in the command line, you can quickly record ideas or commands by using
<span>nano my_notes.txt</span>without interrupting your workflow.
4. Common Pitfalls
- Insufficient Permissions Preventing Save: When trying to edit a system file that requires administrator permissions (like
<span>/etc/nanorc</span>), forgetting to add<span>sudo</span>in front of the command. You will find that you can open the file, but when you press<span>Ctrl + O</span>to save, it will prompt “Permission denied”. - Solution: Exit Nano, then add
<span>sudo</span>in front of the command, for example,<span>sudo nano /etc/nanorc</span>, and then re-edit. - Confusing
<span>^</span>and<span>M-</span>: Beginners often forget that<span>^</span>represents<span>Ctrl</span>, while<span>M-</span>represents<span>Alt</span>. The bottom toolbar is the best reminder. - Exiting Without Saving: When exiting with
<span>Ctrl + X</span>, Nano will ask “Save modified buffer?” If you accidentally press<span>N</span>(No), all modifications will be lost. Be sure to read the prompt carefully. - Unable to Find Content: Forgetting that searches are case-sensitive (if the
<span>Alt+C</span>mode is enabled), or the search direction is wrong (for example, the cursor is at the end of the file but still searching forward).