Мне нужно ввести некоторое количество строк, заменить все слова в четных точках строк на соответствующее число «*» и вывести результат на экран.
Например, ввод:
Hi! How are you?
It's been a while since we've met.
даст нам:
Hi! *** are ****
It's **** a ***** since ***** met.
Вот что я попробовал:
#!/bin/bash
res=""
mm="*"
i=0
while IFS= read -r line; do
for word in line
do
tmp=""
lng=${#word}
if [ $(($lng % 2)) -eq 0 ];
then
while [ $i -lt $lng ]; do
tmp=$tmp$mm
let i=i+1
done
res+=${tmp}
else
res+=${word}
fi
done
done
echo -e "${res}"
Но он не делает то, что должен (
Есть предложения?