Is it possible to copy the output into the clipboard without using the mouse?
For example, I would like to do something like this:
$ pwd >> clipboard
You can get and use the
xsel commands. Instructions for obtaining and using them are here.
Without any arguments,
xclip copies into the primary (middle-click-paste) clipboard instead of the Ctrl-C/Ctrl-V/right-click-context-menu clipboard.
echo foo | xclip -selection clipboard to copy some text into the latter.
To output the clipboard to standard out:
xclip -selection clipboard -o
The equivalent utility for MacOS is
If you are on a MAC you can use pbcopy like this:
pbcopy < thing_to_write_to_clipboard
I'm afraid there is no such thing as "clipboard" in most linux shells, at least none I know of. There's a clipboard in the X server (if your system has X11, you may access it using
xclip command). If you connect to your shell account using some ssh/terminal emulator software, like PuTTy, you can use the clipboard of the system you are using, but that still would be an external clipboard and you might not be able to avoid using mouse.
What I have found is this little neat bash script, found at http://geek.phatus.com/2010/01/create-a-simple-yet-very-useful-bash-clipboard/ . It basically creates a temporary file which serves as a clipboard - you can clear, execute, write etc. your temporary data using a set of commands, which is actually what a clipboard does ;)
on Wayland xcopy doesn't seem to work, use wl-clipboard instead. e.g. on fedora
sudo dnf install wl-clipboard
tree | wl-copy
wl-paste > file
The bash variable $PWD contains the path directory of your terminal window. you might only want to pipe the command pwd into the clipboard so:
echo $PWD | pbcopy
also: you can pipe the output of a command to a file.
pwd > file.txt
so if you save a variable to your bash file you can :
pwd > $variable
cat $variable |pbcopy
I made a small tool providing similar functionality, without using xclip or xsel. Std out is copied to a clipboard and can be pasted again in the terminal, see:
Note, that this tool does not need an x-session. The clipboard can just be used within terminal and not be pasted by ctrl+v or middle-mouse-click into other x-windows
And an ugly way, for cases when you want to copy terminal output to clipboard but don't have a mouse connected to your machine — using "mouse keys" feature of X.
Press Shift+NumLock, and your numpad keys will work to control cursor movement. You can then press Num 0 to simulate press & hold LMB, and move the cursor as you need, then press Num 5 to simulate release of LMB. Now you've selected your text. To simulate RMB you press Num - to change active mouse button, then Num 5 to get context menu. Now you want to return to LMB mode: press Num /. Now you can move your cursor to "Copy" menu entry and press Num 5. That's all. You have your text in clipboard. Press Shift+NumLock to get your numpad to its original function.
PS: In some distros (e.g. Kubuntu) mouse keys shortcut appears to be disabled by default or somehow hidden.
If you run the shell within a screen or byobu session, you can do this:
So you can copy not only a command output, but any part of the terminal window.