一,连接远程数据库(保证在服务器上能使用mysql命令行,至少要安装mysql客户端)

#!/bin/bash
HOSTNAME="ip"
PORT=""
USERNAME="username"
PASSWORD="password"
DBNAME="test"
TABLENAME="shell_test"
insert_sql="insert into $TABLENAME values(NULL,'billchen',2)"
mysql -h$HOSTNAME -P$PORT -u$USERNAME -p$PASSWORD $DBNAME -e "$insert_sql"

二,遍历文件夹,并输出该文件夹下所有的所有文件夹信息(计算文件夹大小)

#!/bin/bash

#function:new ls
#author:reed Files=$1
if [ $# -eq 1 ];then
for FileList in $(find $1);do
FileType=$(ls -lhd $FileList |awk -F' ' '{print $1}'|cut -c 1)
if [ "$FileType" == d ];then
DirSize=$(du -sh $FileList|awk '{print $1}')
ls -lhd $FileList|sed "s/[^ ]\+/$DirSize/5"
else
ls -lh $FileList
fi done
else
echo "--usage:$0 +[directory] or [file];"
echo "--example:$0 /root"
fi

如果想把这些信息输入到文件中:

#!/bin/bash

#function:new ls
#author:reed Files=$1
if [ $# -eq 1 ];then
for FileList in $(find $1);do
FileType=$(ls -lhd $FileList |awk -F' ' '{print $1}'|cut -c 1)
if [ "$FileType" == d ];then
DirSize=$(du -sh $FileList|awk '{print $1}')
ls -lhd $FileList|sed "s/[^ ]\+/$DirSize/5" >> /root/yaming/vedio-log/mylog.txt
else
ls -lh $FileList >> /root/yaming/vedio-log/mylog2.txt
fi done
else
echo "--usage:$0 +[directory] or [file];"
echo "--example:$0 /root"
fi

如果还想把上面文件中的信息存入数据库中:

#!/bin/bash

Host="ip"
TABLE="statistics_storage"
passwd="password"
filename=`date +%Y-%m-%d.txt`
cat /root/yaming/vedio-log/${filename}|tr " " "," > /root/yaming/vedio-log/${filename}
cat /root/yaming/vedio-log/${filename} | sed 's/^/NULL\t/g' |sed 's/\t/,/g' >> /root/yaming/vedio-log/${filename}
cat /root/yaming/vedio-log/${filename} |while read line
do
echo $line
query=`echo "$line" |awk -F "," '{ printf("%s,\"%s\",\"%s\",\"%s\",\"%s\",\"%s\",\"%s\",\"%s\",\"%s\",\"%s\"", $1, $2, $3, $4, $5, $6, $7, $8, $9, $10)}'`
echo $query
mysql -h$Host dbname -u username -p$passwd <<EOF
INSERT INTO $TABLE VALUES($query);
EOF
done

shell脚本使用记录一:操作文件的更多相关文章

  1. Shell脚本调用ftp上传文件

    Shell脚本调用ftp上传文件 1.脚本如下 ftp -n<<! open x.x.x.x ###x.x.x.x为ftp地址 user username password ###user ...

  2. weblogic每天日志合并shell脚本 [个人记录]【转】【补】

    from RogerZhu modified by King sh logback.rb "/data/logs/" "/tmp/domain" "a ...

  3. 利用shell脚本或者php移动某个文件夹下的文件到各自的日期组成的目录下

    背景是这样的:网站一开始访问量比较小,大家就把所有的图片文件上传到一个目录下(比如是/data/images/).后来访问量大了,图片也多了,这样就影响读取效率.所以有个这样的需求,把这些个图片文件移 ...

  4. Shell脚本实现乱序排列文件内容的多种方法(洗牌问题)

    洗牌问题:洗一副扑克,有什么好办法?既能洗得均匀,又能洗得快?即相对于一个文件来说怎样高效率的实现乱序排列? ChinaUnix 确实是 Shell 高手云集的地方,只要你想得到的问题,到那里基本上都 ...

  5. shell脚本实例一,移动文件夹中大于2000B的文件到另一个文件夹

    shell脚本能帮我们简化linux下的一些工作,现在有个需求,把TMPA文件夹下大于2000B的文件都移动到TMPB下 #! /bin/bash function movefiles() { ` d ...

  6. shell脚本的一些常用操作

    字符串长度: ${#string}可获取string字符串的长度,如下: jenkins@soft1pc:~$ str="who are you"jenkins@soft1pc:~ ...

  7. shell脚本 批量转换目录下文件编码

    发布:JB01   来源:脚本学堂     [大 中 小] 分享一例shell脚本,实现可以批量转换目录下的文件编码,很实用的一个小shell,有需要的朋友参考下.原文地址:http://www.jb ...

  8. 使用shell脚本build并创建ipa文件(转)

    前言 由于项目引入了敏捷开发,需要每天build出一个ipa供QA测试.此前是使用Xcode先achive出一个文件,再在 organizer->achives里发布ipa,一直感觉也没啥不方便 ...

  9. Shell脚本语法---在Makefile等文件…

    1. Shell脚本语法 1.1. 条件测试:test [ 命令test或[可以测试一个条件是否成立,如果测试结果为真,则该命令的Exit Status为0,如果测试结果为假,则命令的Exit Sta ...

  10. shell脚本定时执行|关闭jar文件

    编写shell脚本,用于启动.关闭jar程序: #!/bin/bash #description: 启动重启server服务 #需要配置环境变量后才能直接使用java这些变量 export JAVA_ ...

随机推荐

  1. MacOS远程Windows提示:远程桌面连接无法验证您希望连接的计算机的身份

    解决方法: 1.在Windows端,运行输入 “gpedit.msc”,打开本地组策略编辑器 2.依次打开[计算机配置]→[管理模板]→[windows组件]→[远程桌面服务]→[远程桌面会话主机]→ ...

  2. Windows Server2008 R2安装wampserver缺少api-ms-win-crt-runtime-l1-1-0.dll解决方案

    安装wampserver经常会遇到缺少各种dll文件的问题,可以在安装之前先安装一下微软运行库合集,但此时仍有可能缺少api-ms-win-crt-runtime-l1-1-0.dll文件,那么可以尝 ...

  3. 后台登录(包含验证码)的php代码实现

    login.html文件 <html> <title>login in</title> <body> <form action="han ...

  4. Java 过一下基础

    点我跳过黑哥的卑鄙广告行为,进入正文. Java多线程系列更新中~ 正式篇: Java多线程(一) 什么是线程 Java多线程(二)关于多线程的CPU密集型和IO密集型这件事 Java多线程(三)如何 ...

  5. mabatis insert into on duplicate key

    一.mabatis实现saveOrUpdate功能 <insert id="insert" parameterType="hystrixconfigdo" ...

  6. 手把手丨我们在UCL找到了一个糖尿病数据集,用机器学习预测糖尿病(三)

    梯度提升: from sklearn.ensemble import GradientBoostingClassifier gb=GradientBoostingClassifier(random_s ...

  7. redis学习(一)——redis介绍及安装

    一.redis简介 redis是一个高性能的key-value非关系数据库,它可以存键(key)与5种不同类型的值(value)之间的映射(mapping),支持存储的value类型包括:String ...

  8. linux内存源码分析 - 内存压缩(同步关系)

    本文为原创,转载请注明:http://www.cnblogs.com/tolimit/ 概述 最近在看内存回收,内存回收在进行同步的一些情况非常复杂,然后就想,不会内存压缩的页面迁移过程中的同步关系也 ...

  9. macOS10.4后的刻盘新姿势

    先sudo -s 输入密码 然后终端拖入createinstallmedia   (在macOS Mojave.app显示包内容里面的resources里面的文件复制下来即可) 输入 --volume ...

  10. Spring和SpringMvc详细讲解

    转载自:https://www.cnblogs.com/doudouxiaoye/p/5693399.html 1. 为什么使用Spring ? 1). 方便解耦,简化开发 通过Spring提供的Io ...