Shell脚本读文件和写文件

记录: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日

你可能感兴趣的:(L02-Shell基础,Shell脚本读文件和写文件,Shell脚本,运维)