云网牛站
所在位置:首页 > Linux编程 > 在Ubuntu 18.04中编写shell脚本读取文件的方法

在Ubuntu 18.04中编写shell脚本读取文件的方法

2019-04-08 21:11:18作者:Rimson稿源:linux站

本文介绍在Ubuntu 18.04系统中编写shell脚本读取文件的方法。需求功能:从文件中读取每一行显示、统计总行数、在shell运行过程中指定文件。

 

一、shell初体验

1、在想要保存文件的目录中打开终端,利用vim创建一个名为helloshell的文件:

sudo vim helloshell

2、输入以下代码:

#!/bin/bash

echo "Hello World!"

第一行标志这是一个shell脚本文件,第二行输出“Hello World!”,然后:wq保存退出。

3、修改文件权限(777表示所有用户可读写可执行):

sudo chmod 777 helloshell

4、运行:

bash helloshell或./helloshell

全部过程如下图:

在Ubuntu 18.04中编写shell脚本读取文件的方法

 

二、读取文件

1、创建测试用例文件text:

在Ubuntu 18.04中编写shell脚本读取文件的方法

2、创建shell脚本:

在Ubuntu 18.04中编写shell脚本读取文件的方法

3、运行结果:

在Ubuntu 18.04中编写shell脚本读取文件的方法

 

三、输出行数

1、利用awk 'END{print NR}' [文件名]来输出行数:

在Ubuntu 18.04中编写shell脚本读取文件的方法

2、在shell脚本中添加该功能:

在Ubuntu 18.04中编写shell脚本读取文件的方法

3、运行结果:

在Ubuntu 18.04中编写shell脚本读取文件的方法

 

四、指定文件

上面的shell文件只是把文件名写定在脚本中,并没有实际使用意义,所以需要编写一个指令来指定需要读取的文件,就像vim [文件名]一样,参考玩转Linux必备的Vim技能,一文读懂Vim的安装和配置,学习之法

“$1”代表第1个参数,也就是在read之后紧跟的参数,将其作为文件名传入:

在Ubuntu 18.04中编写shell脚本读取文件的方法

另外,这里使用echo -n ""不换行打印了行数:以便区分。

 

五、全局命令

将脚本移动至环境变量对应的目录中(可以自己更改/bin/xxx来决定运行命令的名称,但注意不能重复):

sudo mv read /bin/read

然后添加运行权限:

sudo chmod 755 /bin/read

 

最终效果

打开终端的目录可以是任何位置,通过以下命令即可运行shell脚本:

sudo read [文件路径]

在Ubuntu 18.04中编写shell脚本读取文件的方法

同理,我们还可以自己为复杂指令编写shell脚本,来提高命令的使用效率,例如开关ss服务,打开锐捷客户端认证等等。

 

相关主题

《Shell脚本学习-Linux命令行》书籍 一共三十七章在线阅读

精选文章
热门文章