20. mysql

mysql --host=127.0.0.1 --port=3306 --database=test --user=test --password=test --default-character-set=utf8

mysql -h127.0.0.1 -P3306 -uxxx  -pxxx --database testdb

1)导出數據库為dbname的表结构(其中用戶名為root,密码為dbpasswd,生成的脚本名為db.sql)
    mysqldump -uroot -pdbpasswd -d dbname >db.sql;

2)导出數據库為dbname某张表(test)结构
    mysqldump -uroot -pdbpasswd -d dbname test>db.sql;

3)导出數據库為dbname所有表结构及表數據(不加-d)
    mysqldump -uroot -pdbpasswd  dbname >db.sql;

4)导出數據库為dbname某张表(test)结构及表數據(不加-d)
    mysqldump -uroot -pdbpasswd dbname test>db.sql;

5)导入数据库中,登录MySQL,执行source命令,后面的文件名要用绝对路径.

mysql> source /tmp/db.all.sql;

21. 脚本求两个文件的相同集合

test1   test2

1           2

2           3

3           4

cat test1 test2 | sort | uniq -d (result: 2 3)

cat test1 test2 | sort | uniq -c | wc -l (result:4) 统计所有出现数字的个数

cat test1 test2 | sort | uniq -c |awk -F ' ' '{print $1}'|grep 2|wc -l 连续出现两次的个数

22. 生成1到10的数字

for i in `seq 10`
do

echo $i
 done

23. 通过脚本生成sql语句

date=`date -d yesterday +%Y-%m-%d`
outputFileName="sql.${date}"
cat test1 | awk 'BEGIN{datecmd="date -d yesterday +%Y-%m-%d";datecmd|getline dateStr}{print "INSERT INTO test (dayString, num1, num2, num3) VALUES ('\''"dateStr"'\'', 0, "$1", "$1") ON DUPLICATE KEY UPDATE num2 = "$1", num3 = "$1";"}' > ${outputFileName}

生成的结果:INSERT INTO test (dayString, num1, num2, num3) VALUES ('2014-06-07', 0, 1, 1) ON DUPLICATE KEY UPDATE num2 = 1, num3 = 1;
INSERT INTO test (dayString, num1, num2, num3) VALUES ('2014-06-07', 0, 2, 2) ON DUPLICATE KEY UPDATE num2 = 2, num3 = 2;
INSERT INTO test (dayString, num1, num2, num3) VALUES ('2014-06-07', 0, 3, 3) ON DUPLICATE KEY UPDATE num2 = 3, num3 = 3;

插入数据库的话可以用脚本:mysql -h127.0.0.1 -P3306 -utest -ptest --database  testdb < ${outputFileName}

24. awk

1)统计次数

test3

a=优秀

b=良好

b=优秀

c=良好

cat test3 | awk -F "=" '{sum[$1]+=1}END{for(i in sum)print sum[i],i}'

cat test3 | awk -F "=" '{sum[$2]+=1}END{for(i in sum)print sum[i],i}'

result1:                 result2:                 result3:

2 优秀                    1 a                       a=优秀
2 良好                    2 b                       b=良好

1 c                        c=及格

2) 提取20:1:0:0:{a=优秀, b=良好, c=及格} 里面的{}数据

cat test4 | awk 'BEGIN {FS=":"} {print $5}' | sed -e "s/[\{\}]//g" | awk '{split($0, items, ", ");for(it in items){print items[it]}}'

25. sed

sed是一个强大的文本工具,这里举一个替换配置文件的例子

from=1001
for i in {1002..1006} ; do
    cat test-${from}.xml | sed -e "s/${from}/${i}/g" > test-${i}.xml
done;

26. 文件格式转换

iconv -f from-encoding -t to-encoding inputfile -o outputfile

Linux常用命令小结(续)的更多相关文章

  1. Linux 常用命令小结

    学习脚本几天了,总结下linux debian下脚本常用命令. Linux    1.添加删除账户 useradd / userdel    2.修改"张三"密码 passwd 张 ...

  2. linux常用命令小结

    其他类 clear 清屏 文件管理 chmod 修改文件权限. 常用列表: chmod +x 使文件变为可执行文件. 常用于sh脚本. touch 创建文件 tar 压缩文件操作. -zxvf, 解压 ...

  3. Linux 常用工具小结:(5) lftp工具使用

    Linux 常用工具小结:(1) lftp工具使用. 这里会按照一些比较常用的功能列出,并举一个具体的例子逐一解释功能. 通常使用ftp过程是登陆ftp,浏览ftp内容,下载ftp文件,或者上传ftp ...

  4. 教老婆学Linux运维(二)Linux常用命令指南【上】

    目录 教老婆学Linux(二)Linux常用命令指南[上] 一.概述 二.常用命令 教老婆学Linux(二)Linux常用命令指南[上] 作者:姚毛毛的博客 tips:文章太长,分两篇发出,本篇发前三 ...

  5. 教老婆学Linux运维(二)Linux常用命令指南【下】

    目录 tips:紧接上一篇,Linux常用命令指南[上] 2.4 文件解压缩 2.4.1 官宣的linux压缩工具:tar tar的基本命令格式为 tar [参数选项] [文件或目录] 我们前面学的命 ...

  6. 一文学完Linux常用命令

    一.Linux 终端命令格式 1.终端命令格式 完整版参考链接:Linux常用命令完整版 command [-options] [parameter] 说明: command : 命令名,相应功能的英 ...

  7. Linux常用命令(一)

    Linux常用命令 1. pwd查看当前路径(Print Working Directory)    [root@CentOS ~]# pwd/root 2. cd .. 返回上一级 .. 表示上一级 ...

  8. linux常用命令的介绍

    本文主要介绍Linux常用命令工具,比如用户创建,删除,文件管理,常见的网络命令等 如何创建账号: 1. 创建用户 useradd -m username -m 表示会在/home 路径下添加创建用户 ...

  9. linux——常用命令与脚本

    linux常用命令 --文件管理pwd --查看当前目录cd --切换当前目录ls --列出当前目录下的所有文件touch --创建文件mkdir --建立目录rmdir --删除空目录rm --删除 ...

随机推荐

  1. /etc/sudoers文件损坏修复

    1. 重启(开机)时按Shift键(这时就会进入grub模式) 选择第二项 进入高级选项

  2. iOS用户信息单例的创建

    UserInfo.h + (UserInfo *) sharedInstance; UserInfo.m #import "UserInfo.h" static UserInfo ...

  3. 《项目经验》--通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中

      先看一下我要实现的功能界面:   这个界面的功能在图中已有展现,课程分配(教师教授哪门课程)在之前的页面中已做好.这个页面主要实现的是授课,即给老师教授的课程分配学生.此页面实现功能的步骤已在页面 ...

  4. freebsd启动报错:My unqualified host name unkown...Sleeping for retry.

    原文 http://blog.163.com/sujoe_2006/blog/static/335315120111158576591/ 病状:启动报"My unqualified host ...

  5. 基于Angular2的前端框架CoreUI开发使用说明

    开源地址:https://github.com/mrholek/CoreUI-Free-Bootstrap-Admin-Template/tree/master/Angular2_CLI_Starte ...

  6. NGINX 配置 SSL 双向认证

    对于 NGINX 的 HTTPS 配置,通常情况下我们只需要实现服务端认证就行,因为浏览器内置了一些受信任的证书颁发机构(CA),服务器端只需要拿到这些机构颁发的证书并配置好,浏览器会自己校验证书的可 ...

  7. idea 光标变成粗体且当前文件搜索功能无法使用的问题

    今天安装了idea最新版,安装完成后发现光标变成了粗体,并且快捷键在使用时出现了问题,比如:ctrl+F搜索功能无法使用 经过反复修改配置也无法改善情况,后来一次重启看到下面小窗弹出有关vim的一个提 ...

  8. Qt容器类——1. QList类、QLinkedList类和QVector类

    在开发一个较高性能需求的应用程序时,程序员会比较关注这些容器类的运行效率,表2.1列出了QList.QLinkedList和QVector容器的时间复杂度比较. 1.QList类 QList<T ...

  9. maven常用插件pom配置

    一.问题描述: 部署一个maven打包项目时,jar包,依赖lib包全部手动上传至服务器,然后用maven部署报错:Exception in thread "main" java. ...

  10. JSP 登录与注册的小案例之二(无验证码,前端拦截空参)

    <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http:// ...