2016-09-29 109 views
0

我正在尝试编写一个模拟cat -n bash命令的文件。它应该接受文件名作为输入,并且如果没有给出输入,则打印使用语句。使用if语句检查输入(bash)

这是我有这么远,但我不知道我做错了:

#!/bin/bash 
echo "OK" 
read filename 
if [ $filename -eq 0 ] 
then 
    echo "Usage: cat-n.sh file" 
else 
    cat -n $filename 
fi 

回答

2

我建议使用-z检查空变量$filename

if [ -z $filename ] 

参见: help test

+1

或'-f'来测试是否存在常规文件或'-r'来验证它是否可读。 – John1024