我到现在为止这样:
read -p "Enter your codenumber : " codenumber
echo "your codenumber is: $codenumber"
if grep -q 'codenumber' "$sin"
then
echo "y"
else
echo "n"
fi
如果我想检查文件sin中是否存在codenumber(作为第一个单词$ 1)该怎么办?
答案 0 :(得分:3)
我认为你刚刚写了一个错字:
grep -q "$codenumber" "$sin"
但请注意,这不包括codenumber属于另一个的情况。如果每个codenumber都在一个单独的行上;考虑使用:
grep -q "^$codenumber$" "$sin"
,其中
编辑:回答其他问题:假设该文件包含以下行:
218394 ted y ted
131241 john n ted
以下是如何从符合$ codenumber的行中获取第3列:
awk "/^$codenumber /{ print \$3 }" "$sin"