hosts文件 端口_在Linux系统中使用Vim读写远程文件
大家好,我是良许。
今天我们讨论一个 Vim 使用技巧——用 Vim 读写远程文件。要实现这个目的,我们需要使用到一个叫 netrw.vim
的插件。从 Vim 7.x 开始,netrw.vim 就被设置为默认安装的标准插件了。这个插件允许用户通过 ftp、rcp、scp、http 等协议读写、编辑和浏览远程文件。
插件 netrw 是什么?
netrw
(面向网络的读写和浏览 Network oriented reading, writing and browsing)插件不仅支持本地和远程终端跨网络编辑、读写文件,还能支持浏览本地和远程终端目录。需要了解这个插件的更多细节信息,在 Vim 会话输入 help netrw
即可查看。
下面让我们来看看怎么用 Vim 从本地系统读写存储在远程 Linux 系统上的文件。
使用 Linux 系统上的 Vim 读写远程文件
读写远程文件的方法几乎和编辑远程文件一样,需要从本地系统读取一个远程文件,我们可以简单的使用下面这个命令来打开它:
$ vim scp://cirdan@192.168.225.22/info.txt
输入 q
退出文件。
要从本地系统写一个远程文件,也是先用上述命令打开文件,之后再按 i
进入插入模式接着就可以往文件里写入了。等写完需要写入文件的内容之后,按 ESC
键退出插入模式,然后输入 wq
保存并退出。
命令背后的运行过程实际上是用 scp 命令将远程文件拷贝到本地系统的 /tmp
目录下,然后再打开文件编辑的。在你编辑完后,scp 命令再次将本地已编辑文件拷贝回远程系统。
要从本地查看远程文件内容是否真的改动过用这一条命令:
$ ssh cirdan@192.168.225.22 cat info.txt
请注意,如果你要用远程终端目录的绝对路径,应像如下所示命令一样使用双斜杠:
$ vim scp://cirdan@192.168.225.22//home/cirdan/Documents/info.txt
如果你已经因为安全原因改变了SSH端口,则应当显式地说明SSH端口号,如下所示:
$ vim scp://cirdan@192.168.225.22:2200/info.txt
这里端口 2200 就是我们自定义的端口号,大家可以根据具体情况使用自己的 ssh 端口号替代上述命令中的2200。
如果你没有 ssh/scp 的通道,也可以用其他协议来替代,如下所示:
$ vim ftp://user@remotesystem/path/to/file
在Vim会话里读写远程文件
如果你已经进入了一个 Vim 会话,则可以使用 Nread(NetRead)和 Nwrite(NetWrite)命令来读写远程文件。
假如,我们现在使用如下命令打开本地系统的 Vim 编辑器:
$ vim
接着你就进入了 Vim 会话,要在本地新缓存中的 Vim 会话中读一个远程文件,只需要运行如下命令:
:e scp://cirdan@192.168.225.22/info.txt
除此之外,还可以用 Nread
命令如下所示:
:Nread scp://cirdan@192.168.225.22/info.txt
或者,这样输入:
:Nread "scp://cirdan@192.168.225.22/info.txt"
想要知道这个命令的详细信息,请在 Vim 会话中输入如下命令:
:Nread ?
读完说明文件后,输入 :q
退出文件即可。
与之相似,要写入远程文件也应先使用如下命令:
:e scp://cirdan@192.168.225.22/info.txt
按 i
键进入插入模式就可以写入和修改文件了。
你也可以用 :w
创建并写文件,但是这个命令只能创建一个新的空文件:
:w scp://cirdan@192.168.225.22/info.txt
写完之后,按 ESC
键退出编辑,然后输入:wq
保存并退出文件。
除此之外,还可以用 Nwrite
命令创建并写入文件,其用法示例如下:
:Nwrite scp://cirdan@192.168.225.22/info.txt
关于 Nwrite
命令的详细信息,在Vim会话中输入如下信息即可:
:Nwrite ?
希望这篇文章对各位有所助益。
hosts文件 端口_在Linux系统中使用Vim读写远程文件相关推荐
- scp创建远程目录_在Linux系统中使用Vim读写远程文件
大家好,我是良许. 今天我们讨论一个 Vim 使用技巧--用 Vim 读写远程文件.要实现这个目的,我们需要使用到一个叫 netrw.vim 的插件.从 Vim 7.x 开始,netrw.vim 就被 ...
- linux查找最近访问的文件,教您在Linux系统中查找最近修改的文件/文件夹
如果您使用Linux系统进行日常操作,则主目录文件将随时间急剧增加.如果您有成千上万个文件,很可能不记得最近更改的文件名,本文将教您在Linux系统中查找最近修改的文件/文件夹.另外,如果要检查出于任 ...
- linux 按名字查找文件夹,详细解读linux系统中使用Find命令查找文件
摘要:文件查找是一个经常用到的功能,在linux系统中查找文件的命令比较多:find.locate.whereis .which等,今天心月就来详细解读find文件查找命令的使用. 文件查找是一个经常 ...
- linux下压缩gz文件怎么打开,在Linux系统中打开或解压缩.gz文件及提取tar.gz文件的方法...
本文本文介绍如何打开(或解压缩).gz文件的方法.Gzip是一种流行的压缩算法,可在保持原始文件模式.所有权和时间戳的同时减小文件大小,此算法通常用于压缩Web元素,以加快页面加载速度.按照约定,使用 ...
- Linux 系统中恢复已删除的文件
注:文章内容仅用于本人日常学习记录 Linux 系统中恢复已删除的文件 当用户意外地删除了一个仍然需要的文件时,大多数情况下,是没有简便的方法可以重新找回或重建这个文件.不过,幸运的是文件是可以通过一 ...
- linux系统中vi/vim文本编辑器的使用简介
linux系统中vi/vim文本编辑器的使用简介 1. vi/vim简介 vi/vim 是linux系统中最基本的编辑器,类似于windows系统中的记事本,几乎所有的linux开发版本都内置了v ...
- linux下开放sftp端口,如何在 Linux 系统中如何更改 SFTP 端口
如何在 Linux 系统中如何更改 SFTP 端口 SFTP(SSH文件传输协议)是一种安全文件协议,用于通过加密连接在两个主机之间传输文件. 它还允许您对远程文件执行各种文件操作并恢复文件传输. S ...
- centos6重启网络命令_虚拟机-linux系统中图形界面和命令行界面切换
linux系统中图形化界面和命令行界面之间的切换可以分为两种,临时性切换和永久性切换. 临时性切换即切换后只对本次生效,系统重启后界面还是默认界面. 永久性切换即切换后系统开机后永远处于的界面. 临时 ...
- linux查找用户前三进程_查看 Linux 系统中进程和用户的内存使用情况 | Linux 中国...
有一些命令可以用来检查 Linux 系统中的内存使用情况,下面是一些更好的命令.-- Sandra Henry-stocker 有许多工具可以查看 Linux 系统中的内存使用情况.一些命令被广泛使用 ...
最新文章
- html input不可编辑
- 全球首家!苹果市值达 3 万亿美元,创历史新高
- automapper java 有什么_对象映射工具AutoMapper介绍
- mysql 5.7 多实例主从_mysql-5.7.20源码安装 + 多实例 + 主从复制
- 听说你,对薪酬待遇不太满意。。。
- MySQL常用存储引擎之Archive
- 代码复杂度降级的几个实例
- linux如何安装ut880驱动下载,UT-8801 UT - 下载 - 搜珍网
- docker-compose命令介绍和使用【官方英文文档翻译】【附加案例】
- Maven学习总结(44)——Maven构建时生命周期及其常用集成命令详解
- 英语总结系列(二):爽约Pauel叔十五天
- dump的文件 查看pg_【PG备份恢复】pg_dump命令测试
- LeetCode: Implement strStr() [027]
- Java端实现JSHOP2的调用
- 数字IC验证方法的分类
- 在线python编辑器-在线python编辑器
- 一个好的web前端开发者,是怎么学习的?前端开发培训机构哪个比较好
- C语言continue用法
- 按钮在IE中两边被拉伸的 BUG
- 收银系统的硬件有哪些?
热门文章
- 准备-上机考试-华为
- [ app.json 文件内容错误] app.json: [“usingComponents“][“van-button“]: “@vant/weapp/button/index“ 未找到
- 物联网专题--基于APP Inventor的BLE蓝牙4.0数据通信
- Promise(异步处理-实现)
- 怎么修剪_杏树怎么育苗?怎么修剪怎么防治病虫害?
- java每一个小时同步_Java同步块(synchronized block)使用详解
- c语言递归算法实验报告,递归算法实验报告.docx
- 人人开源之代码生成器(renren-generator)
- 【运维程序】简单的命令控制器(支持定时命令执行、重复定时任务命令和进程管理,开发这个小程序主要是为了方便管理服务进程)【个人github项目】...
- IOC与DI(xml 配置)