Bash Проверка, содержит ли строка файла букву или буквосочетание.

Данный скрипт можно легко реализовать при помощи grep, но есть и другой способ, используя while и case

#!/bin/sh
num=0
while read LINE
do
num=$[$num+1]
char=$1
origword=$LINE
while true; do
case $LINE in
'') echo "$char not found"; break;;
${char}*) echo "$char found in $origword line number $num"; break;;
esac
echo $LINE
word=${LINE#?}
done
done < $2

Если назвать файл с данным скриптом script, то запускается он так :

./script <словосочетание которое мы ищем> <имя файла>

 

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>