zoukankan      html  css  js  c++  java
  • shell编程备忘

    1、脚本存放目录

    workspace="$(cd "$(dirname "$0")"; pwd)"


    2、输出  其中 command 代表指令

    0 标准输入

    1 标准输出

    2 标准错误

    dev/null 代表空设备文件

    command >/dev/null  #屏蔽标准输出

    command >/dev/nul 2>&1 #屏蔽标准输出、标准错误

    command > filename #把标准输入重定向到filename文件中(覆盖)

    command >> filename #把标准输入重定向到filename文件中(追加)

    3、数组

    arr=(a b c)
    for val in ${arr[@]}
    do
        echo val
    done

    数组长度 ${#arr}

    4、字符串操作

    grep  -i ^abc$ filename

    awk

    echo a:b:c|awk -F : '{print $2}' 

    输出b

    -F 后面跟分隔符 默认为空格

     echo a:b:c|awk -F : '{print $NF}'

    输出 c
    NF为域个数

    echo a:b:c|awk -F : '{print NF}'

    输出 3

    删除分隔符最后一项

    path="a/b/c/d"
    dir=${path%/*}
    echo $dir

    输出 a/b/c

    5、获取某些行

    head -1 #只显示第一行

    head -2 #只显示前两行

    tail -1 #只显示最后一行

     6、文件内容替换

    pattern="^Add:${filepath}$"
    replace="Modify:${filepath}"
    #由于路径中有/所以分隔符采用 #
    sed -i "s#${pattern}#${replace}#g" ${configPath}
    sed -i 's/old/new/g' filename

    其中 s 后面可以定义分隔符如#

  • 相关阅读:
    C语言的指针移位问题
    makefile、gdb使用记录
    MUSIC算法学习笔记
    时间格式转换
    linux网络编程笔记——UDP
    linux网络编程笔记——TCP
    bash里,echo对换行符的处理
    树莓派使用8188eu无线网卡
    时间都去哪了?——安卓GTD工具
    让sublime text 2更好地支持Python
  • 原文地址:https://www.cnblogs.com/rubekid/p/3201747.html
Copyright © 2011-2022 走看看