• 鸟书shell 学习笔记(一) shell专注于概念和命令


    变量

      variableName=value
    1. 等号左右不能有空格
    2. 变量内容有空格须要用"或者'括起来,可是 v="hello $name" $保持原有功能,单引號则不行,v="hello '$name'"纯文本
    3. 可用转义符将特殊字符转成普通文本 `命令`,$(命令) ,在文本中提供命令运行信息
    4. 变量累加, name=xiaoyi ; name=$name:'welcome to hz'
    5. 子进程可以继承父进程的环境变量可是不可以继承父进程的自己定义变量,export 变量名;将自己定义变量变成环境变量

    从键盘读入数据:
        read -p '提示语' -t num v # num 时间,v 变量名
    数组的申明和使用:
        v[1]='hello';v[2]='xiao'
        echo ${v[1]}


    路径与命令的查找顺序

    1. 以相对/绝对路径运行命令,如/bin/ls
    2. 由alias找到该命令来运行
    3. 由bash内置的命令运行
    4. 通过$PATH这个变量的顺序找到第一个命令来运行


    读取shell配置文件的命令
    source 或者就是一个点 . ,    因为.bashrc仅仅能在登陆的时候才会被读,假设中途改动了想马上生效的话,我们就须要调用source命令读取当前改动的对应配置文件
    eg: source ~/.bashrc equals . ~/.bashrc 


    管道命令

    场景: 当数据须要经过几次处理之后才干到我们想要的格式的时候
    管道之后第一个数据一定是能够接受standard input的命令

    选取命令:cut,grep 
    • cut
             cut 按行为单位切出来 cut -d '切割字符' -f fields ,主要是用于行数据的切割显示
             cut -c 字符范围
             eg:
                echo $PATH | cut -d ':' -f 5 //选取path中以:切割的第五个路径
    • grep
    grep 将一行信息中我们想要的数据分析出来
    grep [-acinv] [--color=auto] '查找字符串' filename
    -a 将binary文件以 text的方式查找数据
    -c 统计匹配到的数据个数
    -i 忽略大写和小写
    -n 输出行号
    -v 输出没有匹配内容的那一行
             grep能够结合正则表达使用

    排序与统计命令 sort ,wc ,uniq
    • sort 
      sort [-fbMnrtuk] [file or stdin]
      -f 忽略大写和小写
      -b 忽略最前面的空格
      -M 以月份的名字排序
      -n 使用纯数字排序
      -r 反向排序
      -u 同样的数据项仅出现一项
      -t 分隔符
      -k 以以那个区间进行排序
      eg:
           cat /etc/passwd | sort -t ':' -k 1 //对以: 切割的第一列排序

    • wc  统计字, 行或者字符数
      wc [-lwm]
      -l 行数
      -w 字数
      -m 字符数 
      eg:
           cat /etc/profile | wc -lwm
    • uniq 反复的数据竟出现一次就可以
      uniq [-ic]
      -i 忽略大写和小写
      -c 进行计数
      eg:
           last | cut -d ' ' -f1  | grep '^xiaoyi'  | uniq -c

    字符转换指令 tr, col, join, paste, expand 
    • tr : tr [-ds] set1
      -d 删除信息其中的set1字段
      -s  替换掉反复的字符
      eg : 小写换大写 last | tr 'a-z' 'A-Z'


    find ./ -name "*.java" | xargs wc -l
    find grep 讲的比較好的链接: http://www.cnblogs.com/skynet/archive/2010/12/25/1916873.html

    特殊符号:



  • 相关阅读:
    StringGrid 实例3: 本例功能: 1、修改 TStringGrid的默认宽与高; 2、添加行; 3、确认当前单元并赋值.
    StringGrid 实例2:1、获取 StringGrid 的行数、列数; 2、给单元赋值.
    StringGrid 实例1:初始化StirngGrid的首行和首列
    stringgrid事件大全
    firemonkey中stringgrid属性大全
    DELPHI声明一个指针变量,什么时候需要分配内存,什么时候不需要分配内存?
    CoolTrayIcon4.0
    Delphi七个版本
    基础
    按钮打开链接,按钮click代码
  • 原文地址:https://www.cnblogs.com/blfshiye/p/4556900.html
Copyright © 2020-2023  润新知