所以我有这段代码。基本上,我正在拿文件$ i,检查它是否有内容,检查我是否可以阅读它,如果我可以打开它,抓住第一行,看看它是否是一个bash文件。当我每次在非空文件上运行时,它被注册为true和echo的bash。
## File is empty or not
if [[ -s $i ]]
then
## Can we read the file
if [[ -r $i ]]
then
## File has content
if [[ $(head -n 1 $i) = "#! /bin/bash" ]]
then
echo -n " bash"
fi
fi
else
## file does not have content
echo -n " empty"
fi
这是检查它是否是bash:
if [[ $(head -n 1 $i) = "#! /bin/bash" ]]
答案 0 :(得分:0)
将[[
替换为[
,并将$(head -n 1 $i)
括在引号中。
[[
本身就是一个测试其内容的运算符。