当前位置: 首页 > news >正文

Linux学习

  • 复制文件
    cp myfile myfile.copy      将文件 myfile 复制到当前目录下的 myfile.copy 文件 (若没有新建,有则覆盖)
    cat myfile > myfile.copy     作用同上   cat file1 file2 > file  将file1 和 file2 文件复制到 file 文件尾部(若没有新建,有则覆盖),顺序:file1的内容 + file2 的内容
    cat myfile >> myfile.copy      若无则新建,若有则尾部添加  cat file1 file2 >> file  将file1 和 file2 文件追加到 file 文件尾部
  • 新建文件 
    vi myfile
  • 删除文件 rm(remove)
    rm myfile
  • 新建目录
    mkdir mydir
  • 删除空的目录
    rmdir mydir
  • 删除目录下的所有内容(慎用,无回收站)
    rm -r mydir
  • 显示当前目录
    pwd(print working directory)
  • 改变目录
    cd ......
  • 列出mydir目录下的内容(包括子目录、文件)
    ls [-p] mydir     加上-p,列出的子目录的文件名后加斜杠/

vi 编辑器的用法

  • vi myfirst     新建文件
  • 进入vi后,为命令模式,按键盘 i 进入插入模式可以编辑文本,按Esc返回命令模式下,按 :wq 表示保存文件并退出。
  • vi -R myfirst   以只读的方式打开文件myfirst    或者 view myfirst  这种情况下修改文本,需要使用 :w! 或 :wq! 来保存文件。
  • vi file1 file2    启动vi 编辑多个文件。这种情况下, :ar  显示所有文件名,且当前文件名用 [ ] 括起来,:n 显示下一个文件
  • 命令模式下
:e myfile       编辑另一个文件
:r myfile       把myfile文件的内容引入当前编辑的文件中,插入在光标行后
:1,5 w temp     把当前编辑器中的第1 - 5行写入temp文件。若temp文件不存在,新建temp;若存在,要使用 w! 覆盖已存在的文件,或改文件名。
dd    剪切当前行的内容到缓冲区。 移动光标,然后输入  p  就在当前行的下面粘贴了缓冲区的内容了。P 是在当前行的上面粘贴。
yy    复制当前行的内容到缓冲区。然后 p / P 粘贴。
2dd  剪切当前行开始的2行内容
按 u 撤销最近的文本修改。
d$    删除从光标到当前行尾的文本
d0    删除从光标到当前行首的文本
dw    删除光标位置后的一个word 和空白符(光标在一个word的中间会删除【从光标开始到第一个空白】的内容,若光标在一个空格上,则只删除空格)
3dw  删除光标位置后的3个word 和 空白 (dw 一般将光标放在一个word的首字母使用)
w      光标移动到下一个word
y$    复制光标到行尾的内容到缓冲区。然后 p / P
y0    复制光标到行首的内容到缓冲区。
:set number   显示行号    :set nu
:set autoindent  新行与前一行自动对齐   或   :set ai
:set ignorecase  vi执行搜素时不区分大小写(默认查找是区分大小写的)  或 :set ic        在命令模式下 /unix  就是搜索unix,光标停在第一个unix的首字母上。
当用户退出vi编辑器后,这些设置作废。
-------------
自定义缩写
:ab uno UNIX Operation System
在insert模式下,输入uno加空格,就会自动变为 UNIX Operation System
:ab     列出已设置的缩写
:unab uno     取消uno的缩写
宏操作符(map)
:map q 5dd    那么在insert模式下,按q 就等于 按 5dd,删除5行
:unmap q 5dd   取消
:map      查看
只有少数的键没被使用为命令,可以用来指定,像K、q、V、[Ctrl - e] 、 [Ctrl - x]
也可以指定功能键
:map #2 5dd     将 5dd 指定给 [F2] 键

转载于:https://www.cnblogs.com/htj10/p/10816755.html

相关文章:

  • 面试官:说说双亲委派模型?
  • 北京
  • yocto添加层简介
  • 渐变文件夹,一定要收下这两套超级精美的文件夹图标!
  • 博客
  • 学习python的第一天-模拟用户登录接口,输入错误三次锁定
  • 如何测量距离?ABViewer热门技术问答精选合集!
  • vue脚手架的报错
  • 在阿里云IIS服务器上安装证书
  • 重磅!阿里云时空数据库正式免费公测
  • 用C#在去中心化交易所OceanOne上挂单买卖任意ERC20 token
  • 时隔五年,Scrapyd 终于原生支持 basic auth
  • (编译到47%失败)to be deleted
  • (一)插入排序
  • 阿里一道Java并发面试题 (详细分析篇)
  • [ JavaScript ] 数据结构与算法 —— 链表
  • 「前端」从UglifyJSPlugin强制开启css压缩探究webpack插件运行机制
  • gitlab-ci配置详解(一)
  • iOS 系统授权开发
  • learning koa2.x
  • Linux下的乱码问题
  • markdown编辑器简评
  • Spring Cloud Alibaba迁移指南(一):一行代码从 Hystrix 迁移到 Sentinel
  • thinkphp5.1 easywechat4 微信第三方开放平台
  • 百度地图API标注+时间轴组件
  • 如何在GitHub上创建个人博客
  • 我与Jetbrains的这些年
  • 学习ES6 变量的解构赋值
  • 优秀架构师必须掌握的架构思维
  • 《码出高效》学习笔记与书中错误记录
  • Nginx惊现漏洞 百万网站面临“拖库”风险
  • 好程序员大数据教程Hadoop全分布安装(非HA)
  • ​​快速排序(四)——挖坑法,前后指针法与非递归
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • #Linux(Source Insight安装及工程建立)
  • (02)Cartographer源码无死角解析-(03) 新数据运行与地图保存、加载地图启动仅定位模式
  • (13)Hive调优——动态分区导致的小文件问题
  • (day6) 319. 灯泡开关
  • (html转换)StringEscapeUtils类的转义与反转义方法
  • (webRTC、RecordRTC):navigator.mediaDevices undefined
  • (带教程)商业版SEO关键词按天计费系统:关键词排名优化、代理服务、手机自适应及搭建教程
  • (牛客腾讯思维编程题)编码编码分组打印下标题目分析
  • (七)Knockout 创建自定义绑定
  • (转)shell中括号的特殊用法 linux if多条件判断
  • (转)socket Aio demo
  • (转)真正的中国天气api接口xml,json(求加精) ...
  • .NET MVC 验证码
  • .NET 线程 Thread 进程 Process、线程池 pool、Invoke、begininvoke、异步回调
  • .NET/ASP.NETMVC 大型站点架构设计—迁移Model元数据设置项(自定义元数据提供程序)...
  • .NET开源全面方便的第三方登录组件集合 - MrHuo.OAuth
  • .sh文件怎么运行_创建优化的Go镜像文件以及踩过的坑
  • .skip() 和 .only() 的使用
  • /*在DataTable中更新、删除数据*/
  • @Validated和@Valid校验参数区别
  • [C++]运行时,如何确保一个对象是只读的