我想知道要使用哪个命令将文件文本的所有行从使用vi命令通过ssh访问的远程文件复制到我的主机上。

更清楚地说:

  • 通过ssh访问远程主机
  • 使用vi
  • 检查远程文件
  • 将文件的所有行复制到我的主机剪贴板
  • 将所有行粘贴到主机PC上的文本编辑器

  • 怎么做?
    我已经尝试过以下命令:

    gg“* yG

    它说这些行已复制到注册表中,但是如果我尝试将这些行粘贴到我的文本编辑器中(第4点),则剪贴板中将不包含这些行。

    任何建议将不胜感激。

    注意:我的主机是Mac OSX。

    最佳答案

    在MacOS上,由于某些原因您无法从屏幕和cmd-C(复制)到粘贴板中选择所有想要的文本吗? (和剪贴板,在其他操作系统中)。

    是您需要的整个文件吗?由于您是通过ssh访问的,因此您还可以从命令行将其粘贴到粘贴板上:

    $ ssh remote-svr cat ./subdir/location/textfile | pbcopy
    

    现在,将cmd-V粘贴到本地所需的位置。

    换一种方式看
  • ssh remove-svr访问远程服务器(尽管不是交互式访问)
  • 运行cat ./subdir/location/textfile,后者将文件内容输出到stdout
  • ssh捕获该输出并将其发送到本地stdout
  • | pbcopy将stdout从ssh传递到pbcopy过滤器,该过滤器将其放置在本地粘贴板上。
  • 关于macos - vi命令:将所有行从远程文件复制到剪贴板,并将其粘贴到主机编辑器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44860258/

    10-14 09:32