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

写一个脚本,判断用户输入的文件中,有几行非空行,几行空行。这是我修改过的题目,稍微比马哥的题目复杂一小点。代码如下:

#!/bin/bash

#

read -t 20 -p "Please enter a file path in 20 seconds:" fileName #read最后跟变量名

fileName=${fileName:-0}#20秒后的默认值为0

if 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

因为还处在学习阶段,有些功能不太完善,比如,如果用户在20秒内开始输入后就停止读秒,那就比较人性化。另外,当20秒超时后,能加入更客观的状态描述,就更好了,当然这个可能在后面会学到,应该叫多分支条件判断,我目前还不会写当变量自动为零的时候,elif怎么写判断。

你可能感兴趣的:(linux,if,read)