工作脚本处理文本

简单的使用shell,并且平时学习一下,假设不动手写的话。真是全然没有啥用啊。

所以。代码还是写出来的。

把下边的脚本代码贴出来。怕忘记了。

涉及到数据库连接,awk使用,日期函数,字符串模糊匹配。

#!/bin/bash

DIR_DATE=`date +"%Y%m%d" -d "-1 days"`
mkdir -p ~/export/$DIR_DATE

myfunc()
{
        for x in $(ls)
        do
                if [ -f "$x" ];then
                       if [[ "$x" =~ music_cgamev2_d* ]] && [[ "$x" =~ .*\.log.1.gz ]];then
                                                        #echo "$x";
                                                        zgrep "LoginGame" $x |grep "info" |awk -F" " ‘{print $2 ":" $3 ":" $9 ":" $10 ":" $11}‘ |awk -F":" ‘{print $1"   "$2":"$3":"$4"  "$6"    "$8"     "$10"    "}‘ >> ~/export/$DIR_DATE/denglu_94_$DIR_DATE.txt
                                                fi
                                                #if [[ "$x" =~ .*\.log.1.gz ]];then
                                                #       echo "$x";
                                                #fi
                elif [ -L "$x" ];then
                        echo "this is a link";
                else
                        cd "$x";
                        myfunc;
                        cd ..
                fi
        done
}

myfunc
#! /bin/bash

DATE=`date +"%Y_%-m_%-d" -d "-1 days" `
DIR_DATE=`date +"%Y%m%d" -d "-1 days"`
mkdir -p /data/cgame/$DIR_DATE
CONN_MYSQL="mysql ~~~~~"

echo "select  * from cgame_history.log_pay_$DATE;" | $CONN_MYSQL > /data/cgame/$DIR_DATE/log_pay_$DATE.txt
echo "select  * from cgame_history.log_money_$DATE;" | $CONN_MYSQL > /data/cgame/$DIR_DATE/log_money_$DATE.txt
echo "select  * from cgame_history.log_items_$DATE;" | $CONN_MYSQL > /data/cgame/$DIR_DATE/log_items_$DATE.txt
echo "select uid, name, jewel, gold, starLevel, chessCount, pay_jewel, pay_gold, FROM_UNIXTIME(traceTime-28800) from card_game.game_player order by traceTime asc;" | $CONN_MYSQL > /data/cgame/$DIR_DATE/player_$DATE.txt

echo "select uid,stone_num,FROM_UNIXTIME( day, ‘%Y%m%d‘ ) as dates from card_game.game_anchor_rank  where FROM_UNIXTIME( day, ‘%Y%m%d‘ ) =$DIR_DATE ORDER BY stone_num desc ;" | $CONN_MYSQL > /data/cgame/$DIR_DATE/anchor_rank_$DATE.txt

echo "select uid,stone_num,FROM_UNIXTIME(day, ‘%Y%m%d‘) as dates from card_game.game_player_rank where FROM_UNIXTIME(day,‘%Y%m%d‘)=$DIR_DATE ORDER BY stone_num desc LIMIT 0,10;"|$CONN_MYSQL > /data/cgame/$DIR_DATE/user_rank_$DATE.txt

写的不好,仅仅是实现了功能。有些东西都能够抽出来当做变量, 让代码更加可读。

时间: 2024-10-09 22:20:08

工作脚本处理文本的相关文章

使用shell脚本实现文本拆分

需求说明 在bash中,我们可以使用split命令轻松实现文本的拆分.现在增加两点需求: 1. 在每份拆分文件的头部插入title,便于查看. 2. 拆分文件的名称为源文件名称前加编号,如1.source.txt. 总体思路 1. 执行split命令,把源文件按指定行数拆分成若干小文件. 2. 遍历这些小文件,并创建名称符合要求的拆分文件,然后插入title并拷贝文件内容. 具体步骤 1. 首先执行如下命令,人工造出一个包含9999行的大文件source.txt. echo "" |

shell脚本修改文本中匹配行之前的行的方法

原创文件,欢迎阅读,禁止转载. 例子中是把 finish 前一行的 "yes" 改成 "YES"有一个方法就是利用sed+awk一起来完成. [email protected]:~$ cat a.txt line 0 is yes line 1 is yes line 2 is yes line 3 is yes finish line this line is no this line is no #//用awk找到匹配行号算出要修改的行 [email prote

日常工作脚本

vim attack_count_ip.sh #!/bin/bash#######################################################Filename: attack_count_ip.sh#Author: richard_lyx#Date: 2019-08-27#Discription: count source attack ip and Be attacked IP###################################### L=

工作脚本拆分xml文并重定向数据

sed -n '/<N/p' CM-ENB-SRVIDENTIFYBASEBSRTDD-2C-ALLV2.9.0-20191209020003.xml.gz.xml|awk -F">" '{ print $2 }'|awk -F"<" '{ print $1 }'|sed 's/^/SRVIDENTIFYBASEBSRTDD,/g' |awk -F',' '{print $1,$1,$2,$2}'>11 原文地址:https://www.cn

文本编辑器中,你正在用谁?你最喜欢谁?最看好谁?原因?

豪情 ,一直在打杂,从未被超越 韦易笑等 113 人赞同 使用不同编辑器的原因在于不同的应用场景,就像使用浏览器一样.ide跟编辑器其实差别不大,都是完成开发的任务,我只是分析场景,所以一并列出来了.我的建议,等了解之后,在熟悉之后在合适的场景下选择合适的开发工具. 一般会有这几个场景: 一. 主力的开发工具,这个首推sublime text.主要优点有以下几点: 1. 功能强大,占用内存小,插件丰富,界面友好,可以免费试用(多谢评论区同学指正),适合前端开发这个岗位,支持语言比较多,可以跟不同

Vim编辑器和Shell命令脚本

Vim编辑器和Shell命令脚本 Vim文本编辑器 Vim文本编辑器内设有三种模式:命令模式.末行模式和编辑模式. 命令模式:控制光标移动,可对文本进行删除.复制.粘贴和查找等工作. 输入模式:正常的文本录入. 末行模式:保存.退出与设置编辑环境. 命令模式和末行模式下的一些快捷键: 末行模式下的命令: Shell命令脚本 Shell终端解释器类似人与计算机硬件的翻译官,作为用户与Linux系统内部通讯的媒介.Shell脚本命令的工作方式有两种,首先是前面所接触的交互方式,即当用户每输入一条命令

跟着老刘学《Linux就该这么学》第五天--编写Shell脚本

编写Shell脚本可以将Shell终端解释器当作人与计算机硬件之间的"翻译官",它作为用户与Linux系统内部的通信媒介,除了能够支持各种变量与参数外,还提供了诸如循环.分支等高级编程语言才有的控制结构特性.要想正确使用Shell中的这些功能特性,准确下达命令尤为重要.Shell脚本命令的工作方式有两种:交互式和批处理. 交互式(Interactive):用户每输入一条命令就立即执行. 批处理(Batch):由用户事先编写好一个完整的Shell脚本,Shell会一次性执行脚本中诸多的命

shell 创建文本菜单

创建文本菜单 核心是case命令,根据用户的选择来执行特定的命令. 创建菜单布局 使用echo命令打印字符,生成一个菜单,还可以包括标题等信息: clear echo # -e 选项,打印特殊字符 echo -e "\t\t\tSys Admin Menu\n" echo -e "\t1. Display disk space" echo -e "\t2. Display logged on users" echo -e "\t3. D

【脚本程序】GitHack利用脚本

GitHack GitHack is a .git folder disclosure exploit. It rebuild source code from .git folder while keep directory structure unchanged. GitHack是一个.git泄露利用脚本,通过泄露的.git文件夹下的文件,重建还原工程源代码. 渗透测试人员.攻击者,可以进一步审计代码,挖掘:文件上传,SQL注射等安全漏洞. 脚本的工作原理 解析.git/index文件,找到