0

According to How do I pipe terminal standard output (stdout) to the clipboard, we could copy the current path via:

pwd | xclip -sel clip

However, in most cases, I want to further modify the copied path when I use it. For example, add some folders to the path before running the command:

cp (paste the path) (then, I want to add the target path)

But the pasted path have an "enter" at its end, so I don't have a chance to type my target path...

So, how could I copy the terminal standard output AND remove the last "enter" character?

Ps. I don't care how long the command is, as long as it works robustly.

  • Are you doing this in different terminals? If not, you can expand the value of $PWD in a command line and then edit the value. – muru Jul 07 '21 at 05:16

2 Answers2

2

You can use printf to trim trailing newline:

printf %s "$PWD" | xclip -sel clip
  • accept printf as the answer according to https://unix.stackexchange.com/questions/65803/why-is-printf-better-than-echo (No one talked about speed though) – zheyuanWang Jul 07 '21 at 03:14
1

Another option:

echo -n $(pwd) | xclip -sel clip
vanadium
  • 88,010