当前位置: 首页 > news >正文

深圳网站建设卓企最新经济新闻

深圳网站建设卓企,最新经济新闻,模板网站可以优化吗,地方网站成本无论是将文件读入脚本,还是将数据从脚本输出到文件,都会用到文件重定向,这是一种很 常见的操作。本节中的示例脚本两种功能皆有。它会读取 CSV 格式的数据文件,输出 SQL INSERT 语句,并将数据插入数据库。 shell 脚本使…

无论是将文件读入脚本,还是将数据从脚本输出到文件,都会用到文件重定向,这是一种很
常见的操作。本节中的示例脚本两种功能皆有。它会读取 CSV 格式的数据文件,输出 SQL INSERT
语句,并将数据插入数据库。
shell 脚本使用命令行参数指定待读取的 CSV 文件。CSV 格式用于从电子表格中导出数据,
你可以把这些数据库数据放入电子表格,将电子表格保存为 CSV 格式,读取文件,然后创建
INSERT 语句将数据插入 MySQL 数据库。
实现这些操作的脚本如下:

$cat test23 
#!/bin/bash 
# read file and create INSERT statements for MySQL 
outfile='members.sql' 
IFS=',' 
while read lname fname address city state zip 
do cat >> $outfile << EOF INSERT INTO members (lname,fname,address,city,state,zip) VALUES 
('$lname', '$fname', '$address', '$city', '$state', '$zip'); 
EOF 
done < ${1} 
$ 


这个脚本很简短。这要感谢文件重定向。脚本中出现了 3 处重定向操作。while 循环使用
read 语句(参见第 14 章)从数据文件中读取文本。注意在 done 语句中出现的重定向符号:

done < ${1} 


当运行脚本 test23 时,$1 代表第一个命令行参数,指明了待读取数据的文件。read 语句使
用 IFS 字符解析读入的文本,这里将 IFS 指定为逗号。
脚本中另外两处重定向操作出现在同一条语句中:

cat >> $outfile << EOF 


这条语句包含一个输出追加重定向(双大于号)和一个输入追加重定向(双小于号)。输出
重定向将 cat 命令的输出追加到由$outfile 变量指定的文件中。cat 命令的输入不再取自标准
输入,而是被重定向到脚本内部的数据。EOF 符号标记了文件中的数据起止:

INSERT INTO members (lname,fname,address,city,state,zip) VALUES 
('$lname', '$fname', '$address', '$city', '$state', '$zip'); 


上述文本生成了一个标准的 SQL INSERT 语句。注意,其中的数据由变量来替换,变量中
的内容则由 read 语句存入。
while 循环基本上一次读取一行数据,然后将这些值放入 INSERT 语句模板中,最后将结果
输出到文件中。
在这个例子中,使用以下脚本作为输入文件:

$ cat members.csv 
Blum,Richard,123 Main St.,Chicago,IL,60601 
Blum,Barbara,123 Main St.,Chicago,IL,60601 
Bresnahan,Christine,456 Oak Ave.,Columbus,OH,43201 
Bresnahan,Timothy,456 Oak Ave.,Columbus,OH,43201 
$ 


运行脚本时,显示器上不会有任何输出:

$ ./test23 members.csv 
$ 


但是在输出文件 members.sql 中,可以看到以下内容:

$ cat members.sql 
INSERT INTO members (lname,fname,address,city,state,zip) VALUES ('Blum','Richard', '123 Main St.', 'Chicago', 'IL', '60601'); 
INSERT INTO members (lname,fname,address,city,state,zip) VALUES ('Blum','Barbara', '123 Main St.', 'Chicago', 'IL', '60601'); 
INSERT INTO members (lname,fname,address,city,state,zip) VALUES ('Bresnahan','Christine', '456 Oak Ave.', 'Columbus', 'OH', '43201'); 
INSERT INTO members (lname,fname,address,city,state,zip) VALUES ('Bresnahan','Timothy', '456 Oak Ave.', 'Columbus', 'OH', '43201'); 
$ 


结果和我们预想的一样。现在可以直接将 members.sql 文件导入 MySQL 数据表中了。

http://www.zhongyajixie.com/news/23486.html

相关文章:

  • 农业机械网站模板seo系统优化
  • seo怎么做关键词排名seo公司
  • 个人做电影网站合法吗我要下载百度
  • 建设小型网站价钱杭州网站seo外包
  • 专业网站建设平台公司全世界足球排名前十位
  • 陕西营销型网站建设公司seo基础知识培训
  • 网站的程序和数据库怎么做白帽seo
  • b2b的典型电商平台廊坊seo建站
  • php制作网站后台seo关键词使用
  • 网站开发者常见问题seo百度站长工具查询
  • 做网络 批发的网站电商平台引流推广
  • 网站域名使用方法百度贴吧官网首页
  • 微信企业网站源码下载seo有什么作用
  • b2c购物商城网站建设搜索引擎有哪些
  • 英文建站软件抖音seo关键词排名技术
  • 类似织梦的建站cms网络营销的推广
  • 江西省建设厅网站首页营销培训方案
  • 微信公众号h5网站开发邢台市seo服务
  • 北京住房城乡建设部网站八大员如何写营销软文
  • 湖北做网站找谁seo人员的职责
  • 做机械设备网站兰州网站开发公司
  • 哪个网站可以做创意短视频公众号推广方法
  • 商丘网站建设如何在百度推广
  • 郑州专门做网站的公司有哪些北京seo代理商
  • 黄山网站建设有哪些做网络销售感觉自己是骗子
  • ubuntu 网站开发工具广西网络优化seo
  • 全国设计网站建设女生读网络营销与电商直播
  • 哈尔滨网站优化海外网站推广的公司
  • 网站推销怎么做ppt模板企业优化推广
  • 新闻网站 内容建设网站推广做什么