linux命令

来源:互联网 发布:易语言创建sql数据库 编辑:程序博客网 时间:2024/06/06 10:43
http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html每天一个linux命令目录
http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858470.html(awk使用)
http://www.cnblogs.com/Quincy/archive/2012/03/26/2418485.html(Linux命令中使用正则表达式
http://www.cnblogs.com/didi/archive/2013/08/26/3282137.html(对 Linux 初级、中级、高级用户非常有用的 60 个命令
http://www.linuxguide.it/command_line/linux_commands_cn.html#TOP(linux命令行)
07:56:19 07:56:19
[lxk@localhost logs]$ date +"%F %T"
2016-07-12 07:56:23
[lxk@localhost logs]$ date +"%F %T" | awk   'gsub(/-|:/,"")'
20160712 075704
[ipms@YP526F7-D07-XNFX-REST ~]$ hdfs dfs -du -s -h /rawdata
81.4 T  244.2 T  /rawdata
-du -s   表示总和,-h是为了有单位显示更直观。  -du 检查目录下所占空间大小
gsub是全局查找替换  gsub(/-|:/,"")表示把全部的‘-’或者‘:’替换为空
date +"%F %T" 输出为  2016-07-12 07:56:23  其中%F 为2016-07-12,%T为07:56:23

#!/bin/bash

cd `dirname $0`/../..
INAS_SCRIPT_ROOT=`pwd`

. $INAS_SCRIPT_ROOT/bin/setenv.sh


CONF_DIR=$INAS_SCRIPT_ROOT/conf

if [ ! -z $1 ]
then
 time=$1
else
 time=`date +"%Y%m%d" --date="-1 day" `
fi

while read line  
do
   if [[ "${line# }" =~ ^[^#] ]]
      then
        DIR=$( echo $line | awk 'gsub(/^ | *$/,"")' )
         if [ -z "$DIR" ]
          then
          continue
          fi
    TOTALSIZE=$(( $TOTALSIZE + 1  ))

    echo "=============$DIR=============="
    echo "======TOTALSIZE=====$TOTALSIZE===================="
   # hdfs dfs -du -h $DIR
   fi

done < $CONF_DIR/datadir.conf

其中”=~“是用于字符串正则表达式匹配比较  ,在if 中需要配合双中括号" [[ ]] " 使用。

查找文件用grep,编辑文件例如替换,增加,删除用sed  ,从文件中抽取文档内容用awk
0 0
原创粉丝点击