입력 한 문자열이 파일에없는 경우 코드가 출력되지 않는 이유는 무엇입니까? 문자열을 입력하고 파일에 없으면 응답이 없으며 처음으로 다시 루프됩니다. 누군가 내 코드에 어떤 문제가 있는지 말해 줄 수 있습니까?
while :
do
echo "Please enter a string"
read input_string
echo "Please enter the file name too see if that string is present in it - (Enter .abw after)"
read input_string1
if grep -q $input_string $input_string1 ; then
echo "Your string has been found"
fi
done
답변
while :
do
echo "Please enter a string"
read input_string
echo "Please enter the file name too see if that string is present in it - (Enter .abw after)"
read input_string1
grep -q "${input_string}" "${input_string1}"
if [ $? -eq 0 ] ; then
echo "Your string has been found"
else
echo "Your string has not been found"
fi
done
답변
누락 된 else-branch를 알아 냈지만 한 가지 제안은 다음과 같습니다.
$input_string $input_string1
try 를 사용하는 대신 1을 따르지 ${input_string} ${input_string1}
않도록하십시오 $input_string
.