我从comand行在Ubuntu nano编辑器中打开一个文件,我想复制该文件的所有内容,以便可以将其粘贴到外壳外的另一个应用程序中。

到目前为止,我只能复制在屏幕上可见但不对所有内容都使用shift。

评论

您是否仅在命令行环境中?如果没有,为什么不使用gedit之类的文件打开文件?

我在那台机器上没有电子书,我想学习用nano来做。

顺便说一句,这就是我讨厌linux和命令行的原因:从理论上讲,这是一件很棒的事情,但实际上却毫无疑问,即使最简单,最常见的事情也无法按预期工作。可用性超级失败。

纳米并不强大。只是编辑一些配置文件就可以了,但是作为代码编辑器很烂!

问题太模糊,结果遍及整个地图,导致混乱。通常,您在远程服务器而不是台式计算机上使用nano。这听起来更像是关于终端仿真器的问题,即如何访问nano。我真的认为应该更改问题或将其标记为删除。

#1 楼

您不能在其他地方使用nano的缓冲区,而需要使用X或Gnome的缓冲区。

xclip是解决方案。


X11剪贴板的命令行界面。它也可以用于复制文件,作为sftp / scp的替代方法,避免在已经设置X11转发时提示输入密码。


#2 楼

有一种可能的方法:


文件开头的光标AltShiftT(或尝试使用AltT)将其剪切到末尾文件
如果AltT不起作用,请尝试按CtrlK
复制文件内容,然后按CtrlU再次取消剪切文本


评论


绝妙的技巧,但我想要一份副本而不是削减版。

– Elzo Valugi
11年1月18日在19:41

这仅在nano内有效-关闭后,您将无法按OP要求在其他应用中对其进行剪切。

– A.D.
15年3月29日在13:28

您如何获得nano的文本?这就是我需要弄清楚的

–anon58192932
15年9月24日在18:04

我需要按Alt-A在MAC上标记

– MasterMind
18-09-6在6:06



#3 楼

或者,您可以使用Ctrl +-缩小以适合“一个屏幕页面”上的所有文件内容,并使用鼠标选择所有内容。使用Ctrl + 0放大或使用Ctrl ++逐步放大后。

我不喜欢鼠标部分,但这是在nano中复制批量文本的快速方法。

评论


简单有趣。它甚至可以处理非常大的文件。

– Paulo Coghi
18-10-18在23:37

令人难以置信的是,简单而富有创意的想法可以解决难题。

– Paulo Coghi
18-10-18在23:38

我想是的,这很有趣,这个家伙真是太棒了,我为什么不早考虑呢?

– RoberthSolís
20年7月9日在12:01



#4 楼

您可以使用cat然后从控制台复制它:

cat path/to/file.yml


选择控制台中打印的输出。

评论


这是简单而有效的

–牧岛寿吾
20 May 15 '23:02

#5 楼

实际上,这个答案可能有点晚了,但是我一直在寻找相同问题的答案,所以我才弄清楚了。当您拥有要复制的文件时,可以在nano中打开。您可以按ctl-R并输入要从中复制的文件。这将带入整个文件。

就我而言,我只是复制旧的fstab,所以没什么大不了的。但可能会因为文件庞大而变得荒谬。

#6 楼

您可以使用meta键加T从当前光标位置剪切到文件末尾。meta键可以是alt或转义键,具体取决于您的键盘。对我来说,从OSX通过ssh访问Ubuntu真是难得一见。

评论


解决了!谢谢!

–ThreeCheeseHigh
19年8月26日在7:45

#7 楼

这是另一个解决方案。我个人更喜欢的一种。
它使用Xsel。它与Xclip非常相似,但有一个关键的区别。

$ cat my_funky_file | xsel


虽然Xclip将所有内容放置在主剪贴板中,但Xsel操纵选择缓冲区,使您可以将选择粘贴到中间单击。这一次就好了!因此,如果剪贴板中有尚未粘贴的内容,则不会受到影响!

如果要粘贴内容,则xsel -o会立即将其吐出。

您可以使用

将其安装在基于debian的系统上。
$ apt-get install xsel


否则,源可在此处获得!希望这对某人有帮助。

评论


xsel:无法打开显示:(空):设备的不适当的ioctl

– andilabs
18/09/20在18:09

#8 楼

根据我的理解,如果滚动的内容超过窗口的大小,则无法选择nano中的整个文件。如果您使用的是GUI并从终端打开了nano,并且文件的长度不超过窗口,则可以使用鼠标并选择所有文本,然后cnt + shift + c会将其复制到剪贴板。

尽管不是在nano中,但在vim中还是有一种方法。参见此处。

具体来说,选择文本(可视模式)部分。

#9 楼

正如其他答复所指出的那样,除非您使用鼠标并右键单击进行复制,否则实际上不可能从nano复制到Ubuntu剪贴板并在其他软件中使用它。

但是可以在nano中打开两个文件并从一个文件复制到另一个文件:(根据您的默认Meta键,Meta是Alt还是Esc)



首先,您需要激活多个缓冲区


,如果您具有nano open Metaf
或使用-F标志打开nano:nano -F
或放置set multibuffer进入您的~/.nanorc文件


,然后您可以使用Ctrlr
在新缓冲区中打开文件
,在带有Meta的缓冲区之间切换,向左和转到Meta。右移

转到文件Meta \的开头,然后有两个选项:

a。通过CtrlShift6标记文本,然后将光标移至Meta /末尾,然后剪切文本Ctrlk

b。通过Metat将文本剪切到文件末尾

切换到在另一个缓冲区中打开的另一个文件,并通过Ctrlu

过去

#10 楼

最简单的方法:



Alt \转到文件的顶部。

Ctrl6设置标记。

Alt /转到文件的底部(即标记所有文本)。

Alt6复制所选文本。

(不是问题的一部分,但是作为记录,可以使用CtrlU粘贴复制的文本。)

#11 楼

所以这在腻子中起作用。
1。右键单击标题栏
2。更改设置
3。外观
4。更改-字体
5。将字体更改为1

,这将在单个屏幕上放置很多代码。复制一个大的配置文件就足够了。

评论


那没有回答问题。

–多多
18年6月30日在15:18

#12 楼

在这种情况下,请使用micro代替nano

要安装:

sudo su
cd /opt/
apt-get install curl
curl https://getmic.ro | bash
ln -s /opt/micro /usr/bin/micro
ln -s /opt/micro /usr/bin/nani
exit


,因此您可以使用以下文件打开文件:

micro Readme.txt
or
nani Readme.txt


我同时使用,nano快速方便,微型功能齐全。

您可以使用:



Ctrl-A全选。

Ctrl-CCtrl-V
如果使用Ctrlleft click
放置多个光标

Ctrl-Q退出并按y或n
等。
Micro Gihub页面


#13 楼

我不知道为什么每个人都决定加倍努力。

cat /path/to/file.cfg

它将在终端中输出所有可以使用标准命令选择的文本。

粘贴所需的位置。

评论


问题是如何从nano编辑器中执行此操作,这可能或不可能。

–ckujau
20年5月21日在1:51

我之所以提到这一点,是因为我试图做同样的事情。然后,您只需在nano窗口中右键单击即可粘贴文本。投票不方便。

–螨虫
20-5-22在3:32



即使已经有此解决方案,这也是一个有效的答案superuser.com/a/1231864/752096

– Verny Rivera
20-11-13在16:52

#14 楼

您只能复制在屏幕上看到的内容(通常是一页)。只需单击并用鼠标突出显示。 Ctrl + C。然后按Ctrl + V粘贴到记事本中。如有必要,对每个页面重复此操作。

评论


在终端中是“ Ctrl + Shift + c”。

– Quinnr
17年2月15日在18:15

请仔细阅读问题。您的答案没有回答原始问题。问题是关于Ubuntu而不是Windows。即使关于Windows,您的答案也是错误的。

–DavidPostill♦
17年2月15日在18:15