重定向和管道
  输出重定向:把在终端输出的内容保存到文件上
  输入重定向:通过文件的格式输入内容到终端
  管道:把上一条命令的输出作为下一条命令的输入,如同管道一样,所有命令同时进行,同时处理数据,不产生临时文件
  每个程序三个句柄:标准输入 标准输出 标准错误
 
  标准输入  缩写 stdin        序号 0 读数据  终端连接(默认)
  标准输出  缩写 stdout      序号 1 显示程序输出 终端显示设备
  标准错误  缩写 stderr      序号 2  显示错误信息以及警报  终端显示设备
 
  输出重定向 ls -l > myfile 一般情况不重定向错误信息
  若想把标准输出和错误一起重定向,可以 ls -l /dev/sda /dev/mmm > listing 2>&1 或者 ls -l /dev/sda /dev/mmm > listing 2>listing.err
  >表示覆盖源文件 >>表示在源文件基础上添加
 
  rev 获取键盘输入,反过来输出到终端
   ls -l /dev | wc -l (|表示管道,前面的输出作为后面的输入,本命令统计前面输出的数量)

  curl :一个网络命令,可以访问网页
   
   #!/bin/bash 指定bash解析器  ,接下来的#表示注释
   1. bash file.sh 解析器bash 执行命令,无须指定解析器、无须设置脚步执行权限
   2. ./file.sh 需要指定解析器去执行代码,需要给脚步设置可执行权限
   
   从键盘输入内容为变量赋值
   格式:read [-p "信息"] 变量名
   单引号不能解析变量 ’ $name ‘解析不了 需要用“ $name ”    
   echo -n "please input your name: "   -n 表示不换行  
   
   颜色化输出:
   "\033[32;40m[string]\033[0m"
   #\033[前景颜色;背景色m
   #\033[0m 恢复到系统默认的颜色
   30 黑 31 红 32 绿色 33 棕色 34 ...40
   40 黑 41 红 42绿....50
   
   数值比较 格式【整数1 操作符 整数2】
   -eq 等于
   -ne 不等于
   -gt 大于
   -lt 小于
   -le 小于或者等于
   -ge 大于或者等于
   
   字符串比较
   = 等于  !=不等于 -z 字符串为空
   
   find查找命令:
   find 目录 属性 参数(可以使用正则表达式)
   find .  -name "*.c"
   find /  -perm 755
   find /  -user root
   find / -type  f(d、l)
   -mtime -5 更改时间在五天之内的文件
   -mtime +3 三天以前更改的文件
  xargs命令:在找到文件之后,把文件进行提交处理
  find -name "*.txt" | asrgs rm -rf
 
  grep正则表达式的使用:
 
  awd行定位的使用
 
  sed行定位的使用
  sed -n '2'p fiel 打印第二行
  sed -n '1,3'p file 打印一到三行
  sed -n '/lose/'p file 打印和lose匹配的行
  sed -n '4,/gg/'p file 打印第四行到包含字符gg的行
  sed '1,2'd file 把第一行和第二行全部删除
 
  uniq 行定位的使用
  uniq -c file 打印紧挨的重复行出现的次数
  uniq -d file
 
  sort file  对文件内容进行排序
  sort -t: -k1 -r 以冒号进行分割,以第一列进行逆序排序
 
  cat << eof
    内容  
  eof  格式输出内容
 
  脚本函数的使用:
  function fun(){} 在另一个文件输入 . 文件名 函数名可以调用

linux shell 编程笔记的更多相关文章

  1. Linux Shell编程学习笔记——目录(附笔记资源下载)

    LinuxShell编程学习笔记目录附笔记资源下载 目录(?)[-] 写在前面 第一部分 Shell基础编程 第二部分 Linux Shell高级编程技巧 资源下载 写在前面 最近花了些时间学习She ...

  2. Shell编程笔记

    Shell编程笔记与Windows下熟悉的批处理类似,也可以将一些重复性的命令操作写成一个脚本方便处理.   修改别人的脚本,运行后遇到个问题 setenv: command not found 查证 ...

  3. linux —— shell 编程(文本处理)

    导读 本文为博文linux —— shell 编程(整体框架与基础笔记)的第4小点的拓展.(本文所有语句的测试均在 Ubuntu 16.04 LTS 上进行) 目录 基本文本处理 流编辑器sed aw ...

  4. linux —— shell 编程(编程语法)

    导读 本文为博文linux —— shell 编程(整体框架与基础笔记)的第4小点的拓展.(本文所有语句的测试均在 Ubuntu 16.04 LTS 上进行) 目录 再识变量 函数 条件语句 循环语句 ...

  5. storysnail的Linux串口编程笔记

    storysnail的Linux串口编程笔记 作者 He YiJun – storysnail<at>gmail.com 团队 ls 版权 转载请保留本声明! 本文档包含的原创代码根据Ge ...

  6. linux shell编程总结

    linux shell编程总结 本周学习了unix/linux shell编程,参考的是<LINUX与UNIX Shell 编程指南>,David Tansley著:徐焱,张春萌等译,由机 ...

  7. Linux Shell编程参考大全

    本文记录Linux Shell编程中常用基本知识,方便快速入门以及查询使用. 本文主要分为以下几个部分: 一.Shell中的变量 任何编程语言中,有关变量的定义,作用范围,赋值等都是最最基础的知识. ...

  8. Linux Shell编程中的几个特殊符号命令 & 、&& 、 ||

    https://blog.csdn.net/hack8/article/details/39672145 Linux Shell编程中的几个特殊符号命令 & .&& . || ...

  9. linux shell 编程参考

    #!/bin/bash my_fun() { echo "$#" } echo 'the number of parameter in "$@" is '$(m ...

随机推荐

  1. Java中的接口详解

    接口 是Java语言中一种引用类型,是方法的集合,如果说类的内部封装了成员变量.构造方法和成员方法,那么接口的内部主要就是封装了方法,包含抽象方法(JDK 7及以前),默认方法和静态方法(JDK 8) ...

  2. 一文读懂架构师都不知道的isinstance检查机制

    起步 通过内建方法 isinstance(object, classinfo) 可以判断一个对象是否是某个类的实例.但你是否想过关于鸭子协议的对象是如何进行判断的呢? 比如 list 类的父类是继 o ...

  3. 初学者怎么快速掌握Linux运维?

    2018年里,Linux运维的职位数量和平均薪资水平仍然持续了去年的强劲增幅,比很多开发岗位涨的都快.从研究机构的数据来看,Linux职位数量和工资水平涨幅均在IT行业的前五之列,比去年的表现还要好一 ...

  4. JAVA通用工具类

    1.异常验证框架 框架1:com.google.common.base.Preconditions 框架2:org.apache.commons.lang.Validate 框架3:org.apach ...

  5. maxtrid 3D视差

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. java 导入导出的 命令

    $exp lddba/ld_321@192.168.1.3/testora file=E:\db_bak\ld20170219_1testora.dmp log=E:\db_bak\ld2017021 ...

  7. Django REST framework 自定义(认证、权限、访问频率)组件

    本篇随笔在 "Django REST framework 初识" 基础上扩展 一.认证组件 # models.py class Account(models.Model): &qu ...

  8. Python那点事

    目录 Python那点事 一. Python介绍 二. 目前python的主要领域 三.Python的运用 四. Python的发展史 Python的种类 Python那点事 相信很多小伙伴会跳过此环 ...

  9. 腾讯云,搭建Java开发环境

    搭建 JAVA 开发环境 任务时间:18min ~ 20min 此实验教大家如何配置 JDK .Tomcat 和 Mysql 安装 JDK JDK 是开发Java程序必须安装的软件,我们查看一下 yu ...

  10. hdu2001 计算两点间的距离【C++】

    计算两点间的距离 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...