shell脚本第一讲(简单的读取文件)

背景

对于shell脚本中,我们经常会面临着这样的一个问题,就是我们需要读取一个文件中的数据,然后根据文件中的数据,做一些操作,例如,我们有些时候需要往数据库里面插入一些数据,而这些数据就存在文件中,对于我们之前,我们比较麻烦的做法就是,把数据库里面里面的一些数据,我们自己拼装成sql语句,然后把每一条语句拿到数据库里面执行,这样既麻烦,有感觉效率极低,作为一个程序员,我们最为重要的事情就是提高自己的效率。

准备工作

对于我们要从文件中读取数据,我们首先要准备一个文件,这个文件里面存着我们要读取的数据,我们首先准备一个文件
/Users/oumiyako/WOrk/testFile/test.txt

hello world!
欢迎来到shell编程第一讲

/Users/oumiyako/WOrk/testFile/person.txt

1,'张三',13
2,'李四',23

简单的读取文件(方法一)

以文件中的每一行的数据,进行一个读取操作
method1.sh

!/bin/bash

echo "执行语句开始"
cat /Users/oumiyako/Work/testFile/test.txt | while read line
do
        echo ${line}
done

执行操作,得出结果
./method1.sh

简单的读取文件(方法二)

读取文件中的每一行数据,并写入到mysql中
method2.sh

#!/bin/bash

echo "执行语句开始"
#第二种读取文件的方式
while read line
do
        mysql -h127.0.0.1 -uroot -proot -P3306 -D test -e "insert into person values(${line})"
done < /Users/oumiyako/WOrk/testFile/person.txt
echo "执行语句完成"

备注

mysql命令行参数
mysql [-u name  [-p]]  [-h computername]  [-protocol=name]  [-P n]  [-default-character-set=name][databasename]

-u name 等效于 --user=name
-p (小写) 如果所登录的用户需要密码,那么这个选项mysql命令会提示你输入密码
-h computername 等效于 --host=computername MySQL服务器的地址,如果省略则默认连接到本地计算机
-P(大写) n等效于 -port=n mysql与MySQL服务器连接所使用的端口号,默认为3306
-N, –skip-column-names 不输出列名
发布了99 篇原创文章 · 获赞 72 · 访问量 54万+

猜你喜欢

转载自blog.csdn.net/wj123446/article/details/85094983
今日推荐