首页 > 试题广场 >

如果存在文本文件 tmptestfile,并且文件行数小

[单选题]
如果存在文本文件 /tmp/testfile,并且文件行数小于等于 10 行,则输出文件前 3 行,下列脚本正确的是()
  • if [[ -n '/tmp/testfile' ]] && [[ `wc -l /tmp/testfile` -le 10 ]];then
        head -3 /tmp/testfile
    fi
  • if [[ -f '/tmp/testfile' ]] && [[ `wc -l /tmp/testfile` -le 10 ]];then
        head -3 /tmp/testfile
    fi
  • if [[ -n '/tmp/testfile' ]] || [[ `wc -l /tmp/testfile` -le 10 ]];then
        head -3 /tmp/testfile
     fi
  • if [[ -f '/tmp/testfile' ]] || [[ `wc -l /tmp/testfile` -le 10 ]];then
        head -3 /tmp/testfile
    fi

这是 cat??

编辑于 2020-12-09 16:15:00 回复(0)
1.并且——使用运算符&&
2.[-f filename]——文件filename是否存在,存在则表达式为真,否则为假
3.[-n str]——判断字符串str是否为空,如果字符串长度大于0则表达式为真,否则为假;此处给出的字符串长度  '/tmp/testfile'
显然大于0,表达式为真,但文件不一定存在。
发表于 2020-12-21 17:07:46 回复(4)
我服了,Linux忘差不多了,排除了两个答案还能选错
发表于 2020-08-05 23:11:08 回复(1)
1.并且——使用运算符&&
2.[-f filename]——文件filename是否存在,存在则表达式为真,否则为假
3.[-n str]——判断字符串str是否为空,如果字符串长度大于0则表达式为真,否则为假;此处给出的字符串长度  '/tmp/testfile'
显然大于0,表达式为真,但文件不一定存在。
发表于 2021-05-19 08:44:11 回复(0)
这个整个看不懂啊,这是前端的东西吗🤔
发表于 2020-10-21 15:44:04 回复(5)
-n 检测字符长度是否为0
发表于 2022-03-13 09:23:58 回复(0)
if [ -f './temp' ] &&[ `wc -l <./temp` -le 10 ];
then 
    head -3 ./temp
fi
wc -l  ./tmp会返回文件名称导致报错。
wc -l <./temp 不返回文件名称
编辑于 2021-03-20 13:49:18 回复(2)
这是shell的语句
发表于 2020-11-11 10:39:00 回复(0)
前端还要会这个吗?

发表于 2020-09-21 11:32:05 回复(0)
-f判断的是文件相关,-n判断的是字符串相关,判断字符串是否不为空,not zero ,记混了
发表于 2021-03-15 09:22:00 回复(0)
咦~,-f -n 记岔了!
发表于 2021-02-28 21:30:57 回复(0)
完全没懂,瞎选的,结果对了。
之后看了下,感觉可以先排除“-n”的,这样就剩下B、D了,后面就不知道这么解析了
发表于 2020-10-19 15:34:30 回复(1)
😣
发表于 2020-08-05 22:33:39 回复(0)