实验数据-在/tmp目录下有文件stud_info.csvpython
统计文件行数:cat stud_info.csv|wc -w mysql
查看文件前5行内容:head -5 stud_info.csvsql
导出数据shell
mysql> select * from stud_info into outfile '/tmp/stud_info_wu1.txt' fields terminated by "," enclosed by "";数据库
注释:terminated by ","表示导出来的文件列与列之间用逗号分隔;enclosed by ""表示导出来的每一列不加任何东西bash
In [1]: import numpy as np In [2]: import pandas as pd In [3]: from pandas import DataFrame In [4]: inputfile1='/tmp/stud_info.csv' In [5]: data = pd.read_csv(inputfile1) In [6]: df = DataFrame(data)
In [8]: df.columns
In [9]: df.head(2)
In [10]: df.tail(2)spa
wc命令命令行
格式:wc -【参数】filecode
wc -l file # 显示文件行数blog
wc -w file #打印单词数
练习:
编写一个shell脚本把stud_info.csv导入表(表各自定义);把stud_info.csv导入pandas;验证导入数据的正确性。
1 #!/bin/bash 2 #文件名称:import_mysql 3 #文件功能:将stud_info.csv导入stud_info表中 4 #建立做者:邬家栋 5 #建立时间:2016-07-29 6 7 rows_file=`cat /tmp/stud_info.csv|wc -l` #注意这里是反引号 8 echo "stud_info.csv一共有${rows_file}行" 9 10 #要先链接数据库 11 mysql -u feigu_mysql -p testdb << EOF 12 drop table if exists wu_stud_info; 13 create table wu_stud_info( 14 stud_code varchar(20) not null, 15 stud_name varchar(100) not null, 16 stud_gend varchar(10) not null default "M", 17 birthday date null, 18 log_date date null, 19 orig_addr varchar(60) null, 20 lev_date date null, 21 colledge_code varchar(10) null, 22 colledge_name varchar(300) null, 23 state varchar(20) null, 24 primary key(stud_code) 25 ); 26 27 load data infile '/tmp/stud_info.csv' into table wu_stud_info fields terminated by ',' ignore 1 lines; 28 29 EOF 30 31 if [ $? -eq 0 ] ; then 32 echo "操做成功" 33 else 34 echo "操做失败" 35 36 fi
注释:在写默认值的时候,默认值须要用引号引发来。
注意:if语句必定不要忘记写fi结尾。if后面中括号需留空格
1 #!/bin/bash 2 #文件名称:pandas_import.sh 3 #文件功能:将stud_info.csv 导入到padans中 4 #建立时间:2016-07-29 5 #建立者:邬家栋 6 7 ipython << EOF 8 9 import numpy as np 10 import pandas as pd 11 from pandas import DataFrame 12 inputfile1 = '/tmp/stud_info.csv' 13 data= pd.read_csv(inputfile1) 14 df=DataFrame(data) 15 16 EOF 17 18 if [ $? -eq 0 ] ;then 19 echo "操做成功" 20 else 21 echo "操做失败" 22 fi