Linux 高阶命令进阶

(一)输出重定向

1、 > :正确覆盖输出,会覆盖掉原先的文件内容

    把文本写入文档中

               # vim test

               # cat test

               this is ken

               # echo “this is oscar” >  test

 # cat test

              this is oscar  (把this ...追加到 test 中)

     2、 >> :正确追加输出,不会覆盖原始文件内容,会在原始内容末尾继续添加

    # echo “this is ken” >> test

    # cat test

    this is oscar

    this is ken

  3、 2> :错误覆盖输出,会覆盖掉原先的文件内容,,不能省略2。

    2>> :错误追加输出,会覆盖掉原始文件内容,会在原始内容末尾继续添加

    在工作中,可以将报错的信息全都导入文件

    通常导入 #   /dev/null  黑洞文件,类似于清空回收站。

  4、 &> :将标准输出与错误覆盖输出共同写入到文件中。覆盖原有内容

    &>> :将标准输出与错误追加输出共同写入到文件中(追加到原有内容的后面)。

    第四周 写 shell 脚本会大量应用。

(二)输入重定向  <

        # wc -l < /etc/passwd   统计etc 文档下passwd的行数。

(三)管道符 “|” :作用是把前一个命令原本要输出到屏幕的标准正常数据当作是后一个命令的标准输入。把前一个命令的执行结果交给“|”再运行一次。

    # cat /etc/passwd | grep "root"  | wc -l

    用于数据动态监控,输出结果为1 ,说明命令在执行;为0则未执行。

    查看ip :# ip a

    抓取IP :# ip a | grep “global”  |  awk -F “/”  ' {print  $1}'

        # ip a | grep “global”  |  awk -F “/”   '{print  $1}' |  awk -F  “ +”  ‘{print  $3}’

(四)通配符

  通配符就是通用的匹配信息的符号,比如

    1、 星号(*)代表匹配零个或多个字符(可以为0个)

               # ls /dev/sd*  :查看dev 目录下以 sd 开头的所有文件。

    2、 问号(?)代表匹配单个字符(单个字符必须存在)

              # ls /dev/sd?  :查看dev 目录下以 sd 开头,后面有一个字符的所有文件。

              # ls /dev/sd??  :查看dev 目录下以 sd 开头,后面有两个字符的所有文件。

    3、 中括号内加上数字[0-9]代表匹配0~9之间的单个数字的字符,

             # ls /dev/sd [12]  :查看dev 目录下以 sd 开头,后面分别有一个字符和两个 字符的所有文件。

    4、 中括号内加上字母[abc]则是代表匹配a、b、c三个字符中的任意一个字符。

    # ls /dev/sda[a-z]   :查看dev下以sda开头,后面跟上字母的文件

    通配符可放在任意位置,也可以组合使用。# ls /dev/*[a-z] [a-z]?

(五)三种引号的作用

        1、 单引号(''):转义其中所有的变量为单纯的字符串。

      name = ken name:变量,ken:变量值。

      所见即所得。不改变引号中的东西,原样输出。

    2、 双引号(""):保留其中的变量属性,解释变量,不进行转义处理。

    3、 反引号(``):把其中的命令执行后返回结果。

       先执行反引号中的命令,再执行引号外的操作。

    单双引号能一起使用,没有变量时,单双引号作用相同。

    单引号中的特殊符号失去其特殊作用。双引号中的部分失去作用,如# $  依旧生效。

    反引号中的:# echo `ls`   引号中的先执行再输出。

 

(六)软连接和硬连接

    【软链接相当于快捷方式,硬链接相当于复制粘贴】

    创建完成后,源文件、软链接和硬链接均可以查看到文件内容。

    编辑源文件,软、硬链接跟着动。

    删除源文件,软链接失效,硬链接无影响。再重新建一个与源文件同名的文件,软链接就直接链接到新的文件,而硬链接不变。因为软链接是按着名称进行链接。

    1、 软连接:

    # ln - s 原路径 目标路径    # ls -l

    特点:( s = soft )

      1、就是相当于win中的快捷方式

      2、删除链接文件 # rm -rf 文件 # cat 文件,源文件无影响

      3、删除源文件,链接文件失效

      4、修改源文件\链接文件,内容发生改变,(同步)

      5、源文件被删除,再创建新的同名源文件,链接文件会自动链接。

    2、 硬链接:ln 源文件 目标文件

     总结:

        1、删除链接文件,源文件无影响

        2、删除源文件,链接文件无影响

        3、修改源文件\链接文件,内容都发生改变

      实际用得少,相当于复制,当文件较大时,会占用物理内存。

(七)一切从“/”开始:

        在Linux系统中并不存在C/D/E/F等盘符,Linux系统中的一切文件都是从“根(/)”目录开始的,并按照文件系统层次化标准(FHS)采用树形结构来存放文件,以及定义了常见目录的用途。

           另外,Linux系统中的文件和目录名称是严格区分大小写的。

      /root/Desktop :仅第一个 / 表示根目录,,后面出现的 / 仅代表分割。

      /home :普通用户家目录。/usr/local :用户自己安装的软件。   /etc  :存放配置文件。   /root  :root 用户家目录。/tmp :共享临时文件。  /var  :存放经常变动的文件。 /dev   :磁盘文件。

 (八)绝对路径和相对路径:

                        绝对路径:# ls -l /root/ken1/1/test -d  

        相对路径: # ls -ld ken1/1/test

    # mkdir /ken   :(把ken文件创立在 / 目录下,所以# ls   /  )

    -name "文件名”   :指定要查找的文件名

    {}  :暂时存放文件。

    \; :分号不能直接放在命令里,要在前面加一个 \ 转义。

# grep root /etc/passwd

;顺序执行

Mkdir cjk && cd cjk   : 逻辑执行,,前者执行成功后者执行,,前者失败后者不执行。

ls || echo 1  :前者不执行则后者执行,前者执行后者不执行。

单引号中的特殊符号失去其特殊作用。双引号中的部分失去作用,如# $  依旧生效。

反引号中的:# echo `ls`   引号中的先执行再输出。

Linux 高阶命令进阶(一)的更多相关文章

  1. Linux高阶命令进阶

    1. 输出重定向 > (1>):覆盖输出,会覆盖掉原先的文件内容 >> (1>>) :追加输出,不会覆盖原始文件内容,会在原始内容末尾继续添加 2> :错误输 ...

  2. 测试效率加倍提升!shell 高阶命令快来 get 下!

    背景 目前大部分的项目都是部署在Linux系统上,作为测试,掌握常用Linux命令是必须的技能.很多的工作了好几年的测试人员可能还只会简单的ls.cd.cat等等这些命令,这些命令是可以应付工作的大部 ...

  3. linux系统高级命令进阶

    输出重定向 >:覆盖文件内容 echo "123" > test:把原来的内容覆盖 echo "123" >> test:把原来的存在( ...

  4. 深入理解javascript函数进阶系列第一篇——高阶函数

    前面的话 前面的函数系列中介绍了函数的基础用法.从本文开始,将介绍javascript函数进阶系列,本文将详细介绍高阶函数 定义 高阶函数(higher-order function)指操作函数的函数 ...

  5. 《前端之路》之 JavaScript 进阶技巧之高阶函数(下)

    目录 第二章 - 03: 前端 进阶技巧之高阶函数 一.防篡改对象 1-1:Configurable 和 Writable 1-2:Enumerable 1-3:get .set 2-1:不可扩展对象 ...

  6. linux命令进阶

    Though unconsciously,peple are indeed moving towards their destination.Slow as the progress seen fro ...

  7. React进阶之高阶组件

    前言 本文代码浅显易懂,思想深入实用.此属于react进阶用法,如果你还不了解react,建议从文档开始看起. 我们都知道高阶函数是什么, 高阶组件其实是差不多的用法,只不过传入的参数变成了react ...

  8. Linux高级命令进阶(week1_day2)

    Linux高级命令进阶(week1_day2)--技术流ken   输出重定向   场景:一般命令的输出都会显示在终端中,有些时候需要将一些命令的执行结果想要保存到文件中进行后续的分析/统计,则这时候 ...

  9. JavaScript进阶之高阶函数篇

    JavaScript进阶之高阶函数篇 简介:欢迎大家来到woo爷说前端:今天给你们带来的是JavaScript进阶的知识,接下来的系列都是围绕着JavaScript进阶进行阐述:首先我们第一篇讲的是高 ...

随机推荐

  1. 【简】题解 AWSL090429 【噪音】

    因为每次加上一头奶牛 是什么不重要 牛棚之间贡献除清空操作外无影响 就只要考虑 每个牛棚清空分x次 的贡献 x之和为k       求贡献和最小 一个牛棚清空x次 显然平均清空贡献最小 再用等差数列的 ...

  2. Java 中传统多线程

    目录 Java 中传统多线程 线程初识 线程的概念 实现线程 线程的生命周期 常用API 线程同步 多线程共享数据的问题 线程同步及实现机制 线程间通讯 线程间通讯模型 线程中通讯的实现 @(目录) ...

  3. lumen 支持多文件上传

    1.webform (注意:name后面一定要加[]号) <form method="post" enctype="multipart/form-data" ...

  4. Linux Centos7.x下安装部署VNC的实操详述

    VNC (Virtual Network Console)是虚拟网络控制台的缩写.它 是一款优秀的远程控制工具软件,由著名的AT&T的欧洲研究实验室开发的.VNC 是在基于 UNIX和 Lin ...

  5. Python——built-in module Help: math

    Help on built-in module math: NAME math DESCRIPTION This module is always available. It provides acc ...

  6. c51的学习

    1.点亮发光二极管,8个发光管由上至下间隔1秒流动,其中每个管亮500没事, 灭500ms,亮时蜂鸣器响,灭时关闭蜂鸣器,一直重复下去 . #include<reg52.h>#includ ...

  7. flask+mod_wsgi+apache在windows上的布署

    已经安装过python3.5 1.安装flask: pip install flask 2.安装apache: Apache是开源软件,针对windows环境,它不直接提供编译版本.可以在http:/ ...

  8. .net 解压缩 rar文件

    public static class RARHelper { public static bool ExistsWinRar() { bool result = false; string key ...

  9. mysql Using filesort 索引不可用问题

        今天上班发现线上机器CPU告警,看了一下发现是mysqld一直占用CPU处于满负荷状态,show processlist;一下,发现很多查询在排序状态,随便拿了一条sql explain看了一 ...

  10. Python文本编辑器推荐

    首推当然是Sublime Text:可以中文化,百度上面有教程,页面比较酷炫,功能也不错 然后就是Notepad++,台湾开发,有中文界面