2014马哥Linux0217-4中LineCount的小程序补完版

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2014马哥Linux0217-4中LineCount的小程序补完版相关的知识,希望对你有一定的参考价值。

上一篇因为没学会字符测试,所以写的文件数行脚本,运行起来并不是那么完美,看完0218-1课后,修改代码成如下,基本没有不理想的状态发现了:

#!/bin/bash

#

read -t 10 -p "Please enter a file path in 10 seconds:" fileName #超时设置成10秒

fileName=${fileName:-null} #变量默认值的设定

if [ "$fileName" == null ];then #字符测试的语句

  echo -e "\033[31mTime out!Bad file name input.\033[0m" #这句写成了红色

  exit 4 #自定义退出代码,可以随意

elif grep "^$" $fileName &> /dev/null;then

  echo "$fileName has `grep -v "^$" $fileName | wc -l` lines and `grep "^$" $fileName | wc -l` space lines."

else

  echo "$fileName has `grep -v "^$" $fileName | wc -l` lines and has no space line."

fi


这下算比较完美了,知识盲点会导致程序bug,呵呵。接下来还有文件测试的内容要学习。

以上是关于2014马哥Linux0217-4中LineCount的小程序补完版的主要内容,如果未能解决你的问题,请参考以下文章

2014马哥Linux0218-4中script.sh的题目

2014马哥Linux0218-4前半部文件测试的题目

2014马哥Linux0214中关于系统启动加载环境变量的顺序问题

2014马哥Linux0218-1字符测试与生成交互式选项表的脚本代码

文件系统常用命令:echo命令

文件系统常用命令:pwd命令