• linux shell 编程笔记


    重定向和管道
      输出重定向:把在终端输出的内容保存到文件上
      输入重定向:通过文件的格式输入内容到终端
      管道:把上一条命令的输出作为下一条命令的输入,如同管道一样,所有命令同时进行,同时处理数据,不产生临时文件
      每个程序三个句柄:标准输入 标准输出 标准错误
     
      标准输入  缩写 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 表示不换行  
       
       颜色化输出:
       "33[32;40m[string]33[0m"
       #33[前景颜色;背景色m
       #33[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(){} 在另一个文件输入 . 文件名 函数名可以调用

  • 相关阅读:
    面向对象设计原则之接口隔离原则
    面向对象设计原则之开闭原则
    [OOD]违反里氏替换原则的解决方案
    错误程序
    error: ‘for’ loop initial declarations are only allowed in C99 mode
    函数模板
    查找
    队列类模板
    栈类模板
    单链表的结点类模板
  • 原文地址:https://www.cnblogs.com/mangojun/p/10975917.html
Copyright © 2020-2023  润新知