linux运维学习笔记二

一、表达式
    1.1  测试语句
        应用场景:判断条件是否成立
        表达式:test 表达式  /  [ 表达式 ]
    1.2  条件表达式
        逻辑表达式:命令1 && 命令2        命令1 ||  命令2
        文件表达式:-f  判断输入内容是否是一个文件
                           -d  判断输入内容食肉是一个目录
                           -x  判断输入内容是否可执行
        数值表达式:-gt  -lt   -eq  -ne  -le   -ge
        字符串表达式:str1 == str2     str1 != str2    
        计算表达式:$((计算表达式))    let 计算表达式     注意:let计算表达式不能有空格
        数组操作:array_name=(v1 v2... vn)
                        查看内容   echo ${array_name[index]}
                        查询下标   echo ${!array_name[index]}
                        获取长度   单元素长度   echo ${#array_name[index]}
                                        数组元素格式  echo ${#array_name[@|#]}
二、linux常见符号
    2.1  重定向
        >  以覆盖的方式输入到右侧文件中
        >>  以追加的方式输入到右侧文件的末尾行中
    2.2  管道符
        命令1 | 命令2   从左向右
    2.4  其他符号
        后台展示   &
        信息符号   2>&1
        特殊设备   /dev/null
三、流程控制
    3.1 if语句    if [ 条件1 ]
                      then
                            指令1
                      elif [ 条件2 ]
                      then
                            指令2
                      else
                            指令3
                      fi
    3.2  case语句    case 变量名 in
                            值1)
                              指令1
                                ;;
                            ...
                            值n)
                              指令n
                                ;;
                            esac
    3.3  循环语句
        for语句   for 值 in 列表
                      do
                            执行语句
                      done
        while语句    while  条件表达式    条件成立
                           do
                                执行语句
                          done
        until语句    until  条件表达式      条件不成立
                         do
                               执行语句
                         done
    3.4  循环退出
        break   跳出整个循环
        break n  跳出嵌套循环
        continue  跳出当前匹配到的循环,继续执行下一个循环
        exit  退出当前程序
四、复杂流程控制
    4.1  函数 
        函数名(){
                函数体   $1
                    }
五、常见命令
    5.1  grep
        参数   -c  只输出匹配行的计数    
                  -n  显示匹配行及行号   
                  -v  显示不包含匹配文本的所有行
                  -r  递归查找
                  -i   忽略大小写敏感
                  egrep   基于正则符号进行精确过滤      egrep -nr '数字|for' /test/*
    5.2  sed
        参数   -n  取消静默输出
                  -i   表示对文件进行编辑
        替换   sed -i '行号s#原内容#替换后内容#列号' [文件名]   指定行列替换
                  sed -i 's#原内容#替换后内容#g' [文件名]   全文替换
                  行号不写表示所有行,列号不写表示匹配到的第一个
        查看   sed  -n '行号' 文件名  查看第几行
                  sed -n  '/内容/p' 文件名  查看指定内容
        增加  sed '行号a\新内容' 文件名
                 sed '\内容\a\新内容' 文件名      指定行/内容的下一行增加
                 sed '行号i\新内容' 文件名
                 sed '\内容\i\新内容' 文件名     指定当前行/内容增加    
        删除   sed '行号d' 文件名      指定行删除
                  sed '/内容/d' 文件名           指定内容删除
    5.3  awk
        awk [参数] '[动作]' [文件名]
        awk '{print $n}' 文件名     $0当前所有内容   $n当前行的第几列内容            
        '/内容/'   基于内容查看
        -F  指定文件的列分隔符
        -f  指定内容输出的文件格式
        -v  指定awk的一个变量
    5.4  find
        参数-name     -type     -mtime    -path     -prune
        动作  -print 打印信息   
                -ls列出文件详情   
                -exec 命令 \; 对过滤文件进行下一步操作  
                    {}  相当于过滤出来的文件
                    操作类似于 | xargs rm -f

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值