文件管理
 ● cp 复制文件
cp /路径(原文件) /路径(复制文件)/文件重命名(可选)
   -i:覆盖前询问
   -r:递归复制目录及内部内容
  -a:归档,相当于-dr --preserv=all
  -d:只复制链接,不复制原文件
  -v:查看复制过程
  -f:强制覆盖(复制文件并重新命名时,若文件名存在,将原文件删除再建)
  -u:只复制源比目标文件更新或目标不存在的文件
  -b:如目标存在,覆盖前先备份,形式为filename~
  --backup=numbered:目标如存在,覆盖前先备份加数字后缀
  --preserv
  =mode:权限
  =ownership:所有者所属组
  =timestamp:时间
  -p:等同于--preserv=mode,ownership,timestamp


● 文件类型

   -:普通
   b:块文件
   s:套接文件
   l:软连接文件
   d:文件夹,目录
   c:字符文件
   p:管道文件


~bash.rc:别名存放目录
alias cp ='cp -i' 定义别名
\cp:使用原始cp命令,不使用别名


● mv (move)移动/重命名文件
   -i:交互式
   -f:强制
   -b:若目标存在,覆盖前先备份


● rm 删除
rm [ OPTION ]... FILE...
   -i:交互式,删除时询问
   -f:强制删除,不提示
   -r:递归删除,从父目录开始



目录操作
● tree 显示目录结构
   -d:只显示文件夹
   -L:制定显示的层级数(tree -d /路径 -L 层级数)
   -P:建立多级目录,如上级目录不存在,则自动建立。


● mkdir 建目录
   -p:存在于不报错,且可自动创建所需的各目录
   -v:显示详细信息
   -m:创建目录时直接指定权限


● rmdir 删除空目录
   -p:递归删除父空目录,从下级向上级删除
   -v:显示详细信息



索引节点
● 节点编号
   ls -il:查看文件节点编号
   \df -i:查看节点编号使用率



硬链接、软连接
● 硬链接:
   ln filename [ linkname ]
● 软连接
   ln -s filename [ linkname ]


确定文件内容
 ● file [ OPTIONS ]<filename>
   -b 列出文件辨识结果时,不显示文件名称
   -f filelist 列出文件filelist中文件名的文件类型
   -F 使用指定分隔符号替换输出文件名后默认的”:”分隔符
   -L 查看对应软链接对应文件的文件类型



vim 文本编辑器

vim [ OPTION ]... FILE...
   +# 打开文件后,让光标处于第#行的行首,+默认行尾
   +/PATTERN 让光标处于第一个被PATTERN匹配到的行的行首
   –b file 二进制方式打开文件
   –d file1 file2… 比较多个文件
   -m file 只读打开文件


● 三种主要模式:
 ●命令(Normal)模式:默认模式,移动光标,剪切/粘贴文本

●插入(Insert)或编辑模式:修改文本

●扩展命令(extended command )模式:保存,退出等

常见命令:
   w 写(存)磁盘文件
   wq 写入并退出
   x 写入并退出
   q 退出
   q! 不存盘退出,即使更改都将丢失
   r filename 读文件内容到当前文件中
   w filename 将当前文件内容写入另一个文件
   !command 执行命令
   r!command 读入命令的输出

● 模式转化
   命令模式 --> 插入模式
   i insert, 在光标所在处输入
   I 在当前光标所在行的行首输入
   a append, 在光标所在处后面输入
   A 在当前光标所在行的行尾输入
   o 在当前光标所在行的下方打开一个新行
   O 在当前光标所在行的上方打开一个新行
 ● 关闭文件
   >扩展命令模式:
   :q 退出
   :q! 强制退出,丢弃做出的修改
   :wq 保存退出
   :x 保存退出
   >命令模式:
   ZZ 保存退出
   ZQ 不保存退出

● 字符间跳转:
h: 左 l: 右 j: 下 k: 上
COMMAND:跳转由#指定的个数的字符

● 单词间跳转:
  w:下一个单词的词首
  e:当前或下一单词的词尾
  b:当前或前一个单词的词首
COMMAND:由#指定一次跳转的单词数

● 当前页跳转:
  H:页首 M:页中间行 L:页底
  zt:将光标所在当前行移到屏幕顶端
  zz:将光标所在当前行移到屏幕中间
  zb:将光标所在当前行移到屏幕底端

● 行首行尾跳转:
  ^ 跳转至行首的第一个非空白字符
  0 跳转至行首
  $ 跳转至行尾

● 行间移动:
  #G 或者扩展命令模式下:# 跳转至由第#行
  G 最后一行
  1G, gg 第一行

● 句间移动:
  ) 下一句 ( 上一句

● 段落间移动:
  } 下一段 { 上一段


● 命令模式翻屏操作
   Ctrl+f 向文件尾部翻一屏
   Ctrl+b 向文件首部翻一屏
   Ctrl+d 向文件尾部翻半屏
   Ctrl+u 向文件首部翻半屏

● 命令模式操作
   >字符编辑:
   x 删除光标处的字符
   #x 删除光标处起始的#个字符
   xp 交换光标所在处的字符及其后面字符的位置
   ~ 转换大小写
   J 删除当前行后的换行符

>替换命令(r, replace)
   r 替换光标所在处的字符
   R 切换成REPLACE模式

> 删除命令:
   d 删除命令,可结合光标跳转字符,实现范围删除
   d$ 删除到行尾
   d^ 删除到非空行首
   d0 删除到行首
   dw
   de
   db
   #COMMAND

dd:删除光标所在的行
   #dd 多行删除

D:从当前光标位置一直删除到行尾,等同于d$

2019.5.13-5.17知识点:文件管理、目录操作、索引节点、软硬链接,vim文本编辑 知识点的更多相关文章

  1. 2019年9月17 发布 Java 13

    Java 13 明天发布,最新最全新特性解读   2017年8月,JCP执行委员会提出将Java的发布频率改为每六个月一次,新的发布周期严格遵循时间点,将在每年的3月份和9月份发布. 目前,JDK官网 ...

  2. Java 9 ← 2017,2019 Java → 13 ,都发生了什么?

    距离 2019 年结束,只剩下 35 天了.你做好准备迎接 2020 年了吗? 一到年底,人就特别容易陷入回忆和比较之中,比如说这几天, 的对比挑战就火了! 这个话题登上了微博的热搜榜,也刷爆了朋友圈 ...

  3. Java 9 ← 2017,2019 → Java 13,来看看Java两年来的变化

    距离 2019 年结束,只剩下 33 天了.你做好准备迎接 2020 年了吗? 一到年底,人就特别容易陷入回忆和比较之中,比如说这几天的对比挑战就火了! 这个话题登上了微博的热搜榜,也刷爆了朋友圈, ...

  4. 13.1.17 CREATE TABLE Syntax

    13.1.17 CREATE TABLE Syntax 13.1.17.1 CREATE TABLE ... LIKE Syntax 13.1.17.2 CREATE TABLE ... SELECT ...

  5. 每日一练ACM 2019.04.13

    2019.04.13 第1002题:A+B Proble Ⅱ Problem DescriptionI have a very simple problem for you. Given two in ...

  6. mac文本操作小技巧——2019年10月17日

    声明:看的别人博主写的,自己整理的,非原创,只是自用. mac文本操作技巧 官方指导文档:https://support.apple.com/zh-cn/HT201236 1.光标移动 1.1 行首. ...

  7. Shell命令-文件及目录操作之ls、cd

    文件及目录操作 - ls.cd 1.ls:列出目录的内容及其内容属性信息 ls命令的功能说明 ls命令用于列出目录的内容及其内容属性信息. ls命令的语法格式 ls [OPTION]... [FILE ...

  8. [Beautifulzzzz的博客目录] 快速索引点这儿O(∩_∩)O~~,红色标记的是不错的(⊙o⊙)哦~

    3D相关开发 [direct-X] 1.direct-X最小框架 [OpenGL] 1.环境搭建及最小系统 [OpenGL] 2.企业版VC6.0自带的Win32-OpenGL工程浅析 51单片机 [ ...

  9. Shell命令-文件及目录操作之touch、tree

    文件及目录操作 - touch.tree 1.touch:创建文件或更改文件时间戳 touch命令的功能说明 touch命令用于创建新的空文件或改变已有文件的时间戳属性. touch命令的语法格式 t ...

随机推荐

  1. Minimum number of swaps required to sort an array

    https://www.hackerrank.com/challenges/minimum-swaps-2/problem Minimum Swaps II You are given an unor ...

  2. robotframework 接口测试 +RSA 加密

    首先,实现RSA加密,需要用到pycrypto这个库,这个库又依赖openssl,所以需要先下载openssl,具体教程可以参考http://bbs.csdn.net/topics/392193545 ...

  3. lua学习笔记1--基础语法

    print("打印日志");--单行注释 --[[ 多行注释 --]] a = --变量的类型,是由变量储存的数据决定 数据类型: number:数值类型,可以存储整数和小数 bo ...

  4. 如果Mysql插入字符始终乱码怎么办?

    1.找到my.cnf [root@Sliver-Code ~]# vi /etc/my.cnf 加入下面三行语句 [client] default-character-set=utf8 [mysqld ...

  5. 安装barbican

    1.准备数据库 mysql -uroot -p CREATE DATABASE barbican; GRANT ALL PRIVILEGES ON barbican.* TO 'barbican'@' ...

  6. 教你如何在Ubuntu上安装最新的Python版本

    参考链接:https://cloud.tencent.com/developer/news/343104

  7. SpringCloud学习(七)高可用的分布式配置中心(Spring Cloud Config)(Finchley版本)

    上一篇文章讲述了一个服务如何从配置中心读取文件,配置中心如何从远程git读取配置文件,当服务实例很多时,都从配置中心读取文件,这时可以考虑将配置中心做成一个微服务,将其集群化,从而达到高可用 准备工作 ...

  8. mapreducer计算原理

    mapreducer计算原理

  9. kubernetes的namespaces总是Terminating

    0.尝试强制删除不行 删除时带上–force --grace-period=0参数 ,无法删除:kubectl delete namespace rook-ceph --force --grace-p ...

  10. hdoj1011(树上分组背包)

    题目链接:https://vjudge.net/problem/HDU-1011 题意:给定一颗树,每个结点有两个属性,即花费V和价值w,并且选择子结点时必须选择父结点,求总花费不超过m的最大价值. ...