如何运行命令并复制其输出?

Oli*_*Oli 11 command-line

我被要求运行命令并复制并粘贴输出,但我不知道从哪里开始。

我该怎么办?

Oli*_*Oli 11

希望您可以访问图形桌面。这就是这个答案的第一部分处理的内容。如果没有,请跳过前三个步骤并阅读答案的底部。

第 1 步:加载终端...

第一步是打开一个终端。有许多不同的终端选项,但大多数 Ubuntu 用户都会有gnome-terminal,KDE 用户倾向于有konsole,而 XFCE 用户应该有xfce4-terminal

一旦确定了要运行的命令,这只是运行它的一个例子。

  • Ctrl+ Alt+ T
  • Unity 和 Gnome Shell 用户可以搜索终端。
  • KDE 用户可以在 Applications 下找到 Konsole?系统。
  • 所有桌面都可以按Alt+F2并手动输入终端二进制名称(如上)。

第 2 步:运行您的命令

这是简单的一点。您应该查看以下内容:

在此处输入图片说明

您可以键入命令,也可以复制它(选择文本,右键单击,“复制”,然后右键单击终端,“粘贴”)。对于长命令,建议使用复制和粘贴。我们要避免转录错误!

在此窗口中键入或粘贴命令后,按Return。输出现在应该出现在屏幕上,如下所示:

在此处输入图片说明

第三步:复制内容

复制类似于大多数其他应用程序,除了大多数控制台只知道如何复制“块”。要复制,只需使用鼠标拖动输出直到突出显示,如下所示:

在此处输入图片说明

右键单击终端(转到“编辑”菜单)并选择“复制”。然后您可以返回浏览器或编辑器并粘贴。我们完成了。

步骤 3.5:复制的替代方法:

既然您现在掌握了命令行的窍门,您还可以使用一个名为的命令xclip将内容直接插入到 X 的剪贴板中。这仅在 GUI 运行时才有效。

lspci -nnk | grep VGA -A1 | xclip -selection clip
Run Code Online (Sandbox Code Playgroud)

注意:您可以省略,-selection clip但数据将在您的中键剪贴板中 - 是的,有两个剪贴板......改天再讲一个故事,也许:)


附录:无需复制和粘贴即可提取命令行数据

如果您需要从计算机获取输出,例如,显示设置已损坏,您无法进入可用的桌面,我们必须找到另一种提取输出的方法。您可以手动完成,但通常(在日志的情况下)这是不切实际的。

至少我们需要进入一个终端,你可以按:Control+ Alt+ F1

您可能需要登录。

从这里我们可以运行我们的命令,但输出只会显示在显示器上。现在我们有两个选择:

我有互联网连接

如果您可以访问互联网,则只需将输出“管道”到名为pastebinit. 这会将内容上传到http://paste.ubuntu.com并返回一个简短的、易于转录的 URL,您可以从另一台计算机访问该 URL,也可以直接提供给其他人。

pastebinit 默认情况下未安装,因此我们运行的第一件事是:

sudo apt-get install pastebinit
Run Code Online (Sandbox Code Playgroud)

然后我们运行我们的命令,然后是| pastebinit

lspci -nnk | grep VGA -A1 | pastebinit
Run Code Online (Sandbox Code Playgroud)

您会看到类似以下内容(尽管显然不在窗口中):

在此处输入图片说明

写下 URL,你可以与任何你喜欢的人分享。

我没有互联网连接

这更成问题,但并非不可逾越。我们将需要某种形式的外部存储。USB 记忆棒是一个流行的例子。插入。在非图形设置中,USB 驱动器不会自动安装。正如我所说,有问题。

运行lsblk,您应该会看到如下内容:

NAME              MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda                 8:16   0 111,8G  0 disk  
??sda1              8:17   0   100M  0 part  /boot
??sda2              8:18   0     1G  0 part  /
??sda3              8:19   0    20G  0 part  /usr
??sda4              8:20   0     1K  0 part  
??sda5              8:21   0  58,7G  0 part  
??sda6              8:22   0    32G  0 part  [SWAP]
sdb                 8:96   1  14,5G  0 disk  
??sdb1              8:97   1  14,4G  0 part
sr0                11:0    1   4,4G  0 rom   
sr1                11:1    1  1024M  0 rom   
Run Code Online (Sandbox Code Playgroud)

就我而言,我插入的新磁盘是第二个 (sdb),它有一个分区 (sdb1)。我们需要挂载它,以便我们可以写入它。简单地:

sudo mount -o umask=0000 /dev/sdb1 /mnt
Run Code Online (Sandbox Code Playgroud)

然后我们可以将我们的命令集中到外部磁盘上的新文件中:

lspci -nnk | grep VGA -A1 > /mnt/lspci
cat /var/log/Xorg.0.log >/mnt/xorg.log
Run Code Online (Sandbox Code Playgroud)

这将在外部驱动器上创建两个新文件。您也可以使用 将内容复制到它cp。完成后,您想卸载驱动器:

cd /  # just in case you cd'd into /mnt
sudo umount /mnt
Run Code Online (Sandbox Code Playgroud)

然后,您可以拔下驱动器并将其带到另一台计算机并根据要求上传信息。

  • 终于有今天的好消息了。我不知道`pastebinit`。默认情况下,它应该被添加到 Ubuntu。 (2认同)