Mengapa kode saya tidak menghasilkan jika string yang dimasukkan tidak ada dalam file. Ketika saya memasukkan string dan tidak ada dalam file, tidak ada respons kembali, itu kembali ke loop awal. Dapatkah seseorang memberi tahu saya apa yang salah dengan kode saya?
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
shell-script
Adam Poyser
sumber
sumber
input_string
Omong-omong bukan nama variabel yang bisa dibilang :)Jawaban:
sumber
-v
, atau ada spasi dalam nama file.Anda menemukan cabang lain yang hilang, tetapi satu saran:
alih-alih menggunakan
$input_string $input_string1
coba${input_string} ${input_string1}
hanya untuk memastikan Anda tidak$input_string
diikuti oleh 1.sumber
$input_string1
adalah nilai variabelinput_string1
(split dan globbed, karena tidak dikutip), itu tidak melibatkan variabelinput_string
.