记录:439
场景:Shell脚本读文件和写文件。
版本:CentOS Linux release 7.9.2009。
1.Shell脚本使用cat读取文件内容
1.1脚本
脚本名称:b2023060121.sh
脚本内容:
#!/bin/bash
echo '1.使用cat读取文件内容,使用for in遍历输出'
filePath=`pwd`
for line in `cat ${filePath}/province.txt`
do
echo "${line}"
done
1.2执行与输出
执行命令:bash b2023060121.sh
执行结果:
[root@hadoop211 tutorial]# bash b2023060121.sh
1.使用cat读取文件内容,使用for in遍历输出
长三角省份有浙江、江苏等。
长三角最大都市是上海。
长三角经济发达。
2.Shell脚本使用read命令和cat命令读取文件内容
2.1脚本
脚本名称:b2023060122.sh
脚本内容:
#!/bin/bash
echo '1.使用read逐行读取cat命令读取的内容,使用while遍历输出'
filePath=`pwd`
cat ${filePath}/province.txt | while read line
do
echo "${line}"
done
2.2执行与输出
执行命令:bash b2023060122.sh
执行结果:
[root@hadoop211 tutorial]# bash b2023060122.sh
1.使用read逐行读取cat命令读取的内容,使用while遍历输出
长三角省份有浙江、江苏等。
长三角最大都市是上海。
长三角经济发达。
3.Shell脚本使用read命令和输入重定向(<)读取文件
3.1脚本
脚本名称:b2023060123.sh
脚本内容:
#!/bin/bash
echo '1.使用read命令读取输入重定向(<)内容'
filePath=`pwd`
while read line
do
echo "${line}"
done < ${filePath}/province.txt
3.2执行与输出
执行命令:bash b2023060123.sh
执行结果:
[root@hadoop211 tutorial]# bash b2023060123.sh
1.使用read命令读取输入重定向(<)内容
长三角省份有浙江、江苏等。
长三角最大都市是上海。
长三角经济发达。
4.Shell脚本使用“>”将内容以覆盖方式写入到文件
4.1脚本
脚本名称:b2023060124.sh
脚本内容:
#!/bin/bash
echo '1.使用>内容以覆盖方式写入到文件件: T2023060101.txt'
echo '杭州是一个互联网城市.'> T2023060101.txt
echo '苏州是一个园林城市.'> T2023060101.txt
echo '上海是一个国际大都市.'> T2023060101.txt
echo '2.查看文件内容: T2023060101.txt'
cat T2023060101.txt
4.2执行与输出
执行命令:bash b2023060124.sh
执行结果:
[root@hadoop211 tutorial]# bash b2023060124.sh
1.使用>内容以覆盖方式写入到文件件: T2023060101.txt
2.查看文件内容: T2023060101.txt
上海是一个国际大都市.
5.Shell脚本使用“>>”将内容以追加方式写入到文件
5.1脚本
脚本名称:b2023060125.sh
脚本内容:
#!/bin/bash
echo '1.使用>>将内容以追加方式写入到文件件: T2023060102.txt'
echo '杭州是一个互联网城市.' >> T2023060102.txt
echo '苏州是一个园林城市.' >> T2023060102.txt
echo '上海是一个国际大都市.' >> T2023060102.txt
echo '2.查看文件内容: T2023060102.txt'
cat T2023060102.txt
5.2执行与输出
执行命令:bash b2023060125.sh
执行结果:
[root@hadoop211 tutorial]# bash b2023060125.sh
1.使用>>将内容以追加方式写入到文件件: T2023060102.txt
2.查看文件内容: T2023060102.txt
杭州是一个互联网城市.
苏州是一个园林城市.
上海是一个国际大都市.
6.Shell脚本的“> /dev/null”和“> /dev/null 2>&1”使用
6.1脚本
脚本名称:b2023060126.sh
脚本内容:
#!/bin/bash
echo '1.直接使用cat命令会把内容输出到控制台'
cat T2023060102.txt
echo '2.使用cat 文件 > /dev/null 不会把内容输出到控制台'
cat T2023060102.txt > /dev/null
echo '3.使用cat 文件 > /dev/null 2>&1 不会把内容输出到控制台'
cat T2023060102.txt > /dev/null 2>&1
6.2执行与输出
执行命令:bash b2023060126.sh
执行结果:
[root@hadoop211 tutorial]# bash b2023060126.sh
1.直接使用cat命令会把内容输出到控制台
杭州是一个互联网城市.
苏州是一个园林城市.
上海是一个国际大都市.
2.使用cat 文件 > /dev/null 不会把内容输出到控制台
3.使用cat 文件 > /dev/null 2>&1 不会把内容输出到控制台
以上,感谢。
2023年6月1日