String Bourne Shell脚本搜索字符串

String Bourne Shell脚本搜索字符串,string,shell,grep,sh,String,Shell,Grep,Sh,bourne在让脚本从用户输入的文本文件中查找匹配字符串时遇到问题。没有运气在网上搜索,grep线似乎不想为我工作,我尝试了多个不同的变化与报价等。有什么建议,我可以如何让这工作?干杯 file="/home/Jonnonield/kit104agn2/teledir.txt" echo "Enter name or number to search directory:" read nameNumber if grep -q $namenumber "$file" ; then

bourne在让脚本从用户输入的文本文件中查找匹配字符串时遇到问题。没有运气在网上搜索,grep线似乎不想为我工作,我尝试了多个不同的变化与报价等。有什么建议,我可以如何让这工作?干杯

file="/home/Jonnonield/kit104agn2/teledir.txt"

echo "Enter name or number to search directory:"
read nameNumber

if grep -q $namenumber "$file"  ; then
    echo "string found"
else
    echo "not found"
fi

您正在读取变量
名称编号
,然后使用完全不同的变量
名称编号
(中间没有大写字母N)。-Ed Morton

您正在读取变量
nameNumber
,然后使用完全不同的变量
nameNumber
(中间没有大写N)。如果您需要更多帮助,请编辑您的问题,使其包含一些示例输入和预期输出。并且在调试时不要使用grep的
-q
选项。哦,天哪,我是个白痴。感谢您指出我的愚蠢之处。此外,您使用40岁的Bourne shell的可能性非常小。更可能的情况是,您使用的是其现代后继者之一(Bash是最流行的)。在编写shell脚本时,各种shell之间存在着重要的差异。您可能应该投票以简单的打字错误结束,而不是发布答案(尽管这是一个很好的社区答案!)