Copying from one file to another using nano editor

40,932

Solution 1

Assuming you are in pure console mode and can't use the mouse to copy/paste:

  1. Launch nano in multi-buffer mode (nano -F)
  2. CTRL-^ to start your selection.
  3. Arrow key around until you cover all the text you want to copy.
  4. ESC-^ to copy the selection into the cut buffer
  5. CTRL-R ESC-F to open a file into a new buffer
  6. CTRL-U to paste in the opened file

NOTE: To switch between buffers use either ESC-< and ESC-> or ESC-, and ESC-. (the later is helpful if < and > use the same key on your keyboard layout)

An alternative to 2-4 above is to go to the line(s) you want to copy and CTRL-K to delete them, pressing CTRL-K repeatedly to multiple lines to the buffer. When you've cut all the lines you want to copy, CTRL-Y to re-paste them back into the current buffer. Then continue with step 5.

ALT or any other keys with Meta-key behaviour could also be used instead of ESC in these commands.

Solution 2

Copy text from one file to another with nano text editor

Note: To help you understand better, we will use a

source file: /var/named/athens.local

destination file: /var/named/patra.local

  1. Open the destination file (the file that want to paste the text into), by using nano's multiple buffer.

nano -F destination_file

So we have:

nano -F /var/named/patra.local
  1. Press Ctrl+r.

  2. From inside nano editor, open the source file

    /var/named/athens.local

  3. Press ctrl+^ (this will enable the "mark set" mode)

  4. Select your text.

  5. When you have marked all the text you want, copy the text to

clipboard by pressing Alt+^

Note: Now your text is in clipboard.

Note: In help file you will see the Alt+^ described as M-^. 
  1. Press ctrl+x, to close the source file (/var/named/athens.local).

    Now we will see the destination file (/var/named/patra.local).

Move the cursor to the place you want to paste the copied text (which is

in buffer, don't forget that).

Press ctrl+u, to paste the text.

You are done.

Share:
40,932

Related videos on Youtube

sagar vikani
Author by

sagar vikani

Updated on September 18, 2022

Comments

  • sagar vikani
    sagar vikani over 1 year

    How do I copy a few lines from one file to another file using the nano editor?

  • vrijdenker
    vrijdenker about 8 years
    I like this answer better than the accepted answer because you explain step by step what is actually happening. Thank you.
  • fIwJlxSzApHEZIl
    fIwJlxSzApHEZIl about 8 years
    What key is ^ for steps 2 and 4? And what keys are 'ESC-<' and 'ESC->'? Is it Escape and then hyphen and then shift comma / period all together?
  • fIwJlxSzApHEZIl
    fIwJlxSzApHEZIl about 8 years
    This is extremely clear thank you. To anyone else wondering - the ^ symbol really does mean Shift + 6. So to set the mark it's Control + Shift + 6 on a Windows / Linux keyboard. And to save to clipboard it's Alt + Shift + 6.
  • Michael Innes
    Michael Innes almost 7 years
    The instructions above are generally correct, but on step five skip the ESC-F in order to open the second file into it's own area. Following the instructions above (and typing ESC-F) will instead insert the second file into the first file (which is probably not what you want.
  • Michael Innes
    Michael Innes almost 7 years
    Additionally, on some systems (such as on Raspbian), you may be able to use the 'Alt' key instead of the 'Escape' key. (In some discussion about Nano, the Escape key and Alt key are referred to as the 'Meta' key).