zoukankan      html  css  js  c++  java
  • 实用脚本awk

    非常实用的awk

    有时候需要去服务器下载几个日志

    日志太多,翻滚起来很麻烦,操作又慢又复杂。

    可以使用这个下载最新的两个文件

    ls -lt | head -3 | awk -F ' ' '{if(NR>1) {print $9}}'

    “l”是输出9段信息的,目录属性 所有者,字节,修改时间,文件名
    “t”是按照时间降序排列

    awk -F ‘<分隔符>’ ’ {pattern + action} ‘

    非常强,其中{pattern+action}支持逻辑控制语句 和C-like 一样的。
    还可以加上begin和end,可以在begin中定义并初始化变量

    ‘BEGIN {读之前执行一次} {pattern+action} END {最后执行一次}’

    $0表示 整个一行,$1 表示第一个域 $9 表示第九个。

    上面的命令用到了内置变量
    NR ,表示已经读取的结果行数

    其实可以直接获得三个文件名

    ls -t | head -3

    顺便提一下Windows的bat

    读取文件:
    for /f “delims=分隔符,tokens=2,3” %%i in (File.txt) do
    echo <表达式>

    批量重命名:
    for /f “delims=分隔符,tokens=2,3” %%i in (dir B ) do
    ren <表达式> <表达式>

    %%i表示 第二个域,那么有3,则还可以用%%j,按顺序来。

    是不是差不多。

  • 相关阅读:
    sublime3使用
    内存缓存 ehcache
    一些服务端写代码的规范,很重要
    对于算法的一点思考
    使用单元测试引发的一些思考
    在多线程中使用spring的bean
    一个线上缓存异常
    java 中的同步机制
    微服务中的集成测试
    服务升级中的zookeeper
  • 原文地址:https://www.cnblogs.com/slankka/p/9158517.html
Copyright © 2011-2022 走看看