ln --->link 链接, 链接有两种:

  软连接 ln -s 源文件 目标文件   :相当于创建了一个快捷方式,源文件损坏后这个链接也就失效了
    ln -s  a.text  a.text.soft    //给a.text  创建一个名为 a.text.soft 的软链接
  硬连接 ln 源文件 目标文件
    ln   a.text   a.text.hard    //给a.text  创建一个名为 a.text.soft 的硬链接

    #硬连接相当于cp -p +同步跟新 ,-p就是拥有原来文件所有的属性

重定向与管道符

  作用:将命令的执行结果输出到指定的文件中,而不是直接显示在屏幕上

    0 标准输入 键盘 stdin 仅读取
    1 标准输出 终端 stdout 仅写入
    2 标准错误 终端 stderr 仅写入

    3+ filename 其他文件 读/写

在linux中构建了一个带有编号标记的通道(文件描述符)的进程结构来管理打开文件
通过进程连接到文件,进行文件数据的操作

类型1:重定向标准输入,将命令的执行结果输出到指定的文件家中

  • 1>(也可以省略写为 > )代表覆盖写
  • 1>>(也可以省略写为 >> )代表追加写

类型2:重定向标准错误,将错误信息写入指定文件中

  • 2> 代表覆盖写
  • 2>>  代表追加写

类型3:重定向标准输入和标准错误,将标准输出和标准错误输出写入指定的文件中

  • &> 代表覆盖写
  • &>> 代表追加写

举例子:

  • 我用的是root登录,来到一个文件夹中,随便啥文件夹都可以  执行 命令 ll > message.txt   你会发现执行的结果都在message中了
  • 执行ls > message.txt  你会发现执行的结果仍然在message.txt 中,但是原来的内容被覆盖掉了
  • 执行 find / -user student(我事先有一个student的用户) 就会出现一堆执行结果,有错误输出和正常输出
  • 执行 find / -user studnet  > message.txt 你会发现,屏幕上只是打印了标准错误输出,正常输出写入了message.txt 文件中
  • 执行 find / -user studnet  2> message.txt 你会发现,屏幕上只是打印了标准输出,标准错误输出写入了message.txt 文件中
  • 执行 find / -user studnet  &> message.txt  你会发现所有的输出都写入了文件中

管道符:传送  符号  |  (将管道前面的输出结果作为后面语句的条件执行)

  举栗子:加入在当前目录下  ls 命令会打印许多内容  那么我们就可以使用 ls |  more,就可以将打印的结果分页展示

Vim文本编辑器
vi/vim vim是 vi 的一个升级版本
vim特点:可拓展性比较高,支持多种语言的脚本,支持文件类型的插件,支持文本的各种骚气操作

直接在终端中输入 vim 或者 vi 都可以查看一下当前vim的一些信息

vim filename  就可以使用vim对这个文件进行一些骚操作了,打开后有三种模式:

命令模式:此模式用于文件导航,复制粘贴,剪切,可以使用简单的命令,撤销,恢复
输入模式:正常的文本编辑模式,进行文本的常规操作,还可以替换文本
末行模式:保存,退出,搜索,替换

使用vim打开文件的默认模式是命令模式,这个时候你对文件是无法操作的,按o键会给你换行切换到输入模式,按i键会直接给你切换到输入模式,按Esc键又可以回到命令模式,然后 输入 : 就可以到末行模式  在末行模式或者命令中输入 :w 就可以保存对文件的修改,同样在这两种模式下输入 :w 就可以对文件进行保存,:q,就可以退出,但是如果你改动了文件没有保存 :q 时无法退出了,这个时候就需要强制退出   :q!

末行模式和输入模式之间不能互相切换,只有通过命令模式进行中转

shell+vim——05的更多相关文章

  1. SHELL/VIM删除重复行(去重)text handle

    vim 删除重复行 - 国内版 Binghttps://cn.bing.com/search?FORM=U227DF&PC=U227&q=vim+%E5%88%A0%E9%99%A4% ...

  2. 我的Shell + VIM配置

    1. 安装powerline-shell 下载powerline-shell # cd /opt/ # git clone https://github.com/milkbikis/powerline ...

  3. Linux Shell Vim 经常使用命令、使用技巧总结

    前言 本文总结了自己实际开发中的经常使用命令,不定时更新,方便自己和其它人查阅. 如有其它提高效率的使用技巧.欢迎留言. 本文地址 http://blog.csdn.net/never_cxb/art ...

  4. shell -vim

    编辑文件 vim vim 1.txt 点击i进入编辑模式 如果发现按上下左右有问题的且出现乱码的话,可能是编码格式不对导致的,在crt或者是xshell设置一下编码格式就行. 保存是点击ecs先退到预 ...

  5. 【转】shell 教程——05 第一个Shell脚本

    打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好,如果你用php写shell 脚本,扩展名就用php好了. 输入一些代码: #!/bin/bash ...

  6. 008-linux shell vim使用

    一.概述 vi: Visual Interface 可视化接口 vim: VI iMproved VI增强版 全屏编辑器,模式化编辑器 vim模式: 编辑模式(命令模式) 输入模式 末行模式 模式转换 ...

  7. Linux - 简明Shell编程05 - 条件语句(Case)

    脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash var=$1 # 将脚本的第一 ...

  8. Shell - 简明Shell入门05 - 条件语句(Case)

    示例脚本及注释 #!/bin/bash var=$1 # 将脚本的第一个参数赋值给变量var case $var in right) echo "Right!";; wrong) ...

  9. Shell - 简明Shell编程

    本文是对Shell脚本编程的总结和回顾,所有涉及的脚本均已做了基本的调试和验证. [toc] 测试环境信息 [root@CentOS7 ~]# uname -a Linux CentOS7 3.10. ...

随机推荐

  1. JavaScript new 操作符 OOP(一)

    什么是对象    对象是单个实物的抽象,通常需要一个模板,表示某一类实物的共同特征,然后对象根据这个模板生成. 对象是一个容器,封装了属性(property)和方法(method),属性是对象的状态, ...

  2. Python常用模块(四)

    一.re模块 正则表达式时计算机科学的一个概念,正则表达式通常被用来检索,替换那些符合某个模式的文本,大多数程序设计语言都支持利用正则表达式进行字符串操作. 正则就是用一些具有特殊含义的符号组合到一起 ...

  3. Python常用模块(三)

    一.shelve模块 shelve也是一种序列化方式,在python中shelve模块提供了基本的存储操作,shelve中的open函数在调用的事和返回一个shelf对象,通过该对象可以存储内容,即像 ...

  4. 正则表达式 \w \d 的相关解读

    在查阅很多相关正则的描述之后,发现对于\w 的释义都是指包含大 小写字母数字和下划线 相当于([0-9a-zA-Z]) (取材于经典教程 正则表达式30分钟入门教程) 但是在实际使用中发现并不是这么回 ...

  5. IntelliJ、ReSharper 4折 加入慧都“惊喜惠”

    慧都2013岁末回馈惊喜不断!著名的软件开发公司JetBrains旗下所有产品加入"惊喜惠"活动环节, JAVA IDE——IntelliJ IDEA,.NET效率工具集——ReS ...

  6. Android NDK 入门与实践

    NDK 是什么 NDK 全称 Native Development Kit,可以让您在 Android 应用中调用 C 或 C++ 代码的工具. NDK 好处 1.NDK 可以生成 .so 文件, 方 ...

  7. constrained属性

    hibernate文档上是这么写的: constrained(约束) (可选) 表明该类对应的表对应的数据库表,和被关联的对象所对应的数据库表之间,通过一个外键引用对主键进行约束.这个选项影响save ...

  8. Azure进阶攻略 | VS2015和Azure,想要在一起其实很容易

    下雨天,巧克力和音乐很配…… 大冬天,男神和捧在手里的奶茶很配…… 「驴牌」的包包,和女神的全部衣服都配…… 对于「王首富」,容易实现的小目标和一个亿是绝配…… …… 醒醒吧!!这些事情和每天只会写代 ...

  9. Servlet是线程安全的吗?

    Servlet不是线程安全的. 要解释为什么Servlet为什么不是线程安全的,需要了解Servlet容器(即Tomcat)使如何响应HTTP请求的. 当Tomcat接收到Client的HTTP请求时 ...

  10. MongoDB 安装笔记

    一.MongoDB的安装 1.在MongoDB的官网下载对应的安装文件() 2.解压安装文件 #解压tgz文件 tar -zxvf mongodb-linux-x86_64-ubuntu1604-3. ...