Я получаю набор строк в качестве входных данных в терминале. Мне нужно заменить подстроку ".awk"
на ".sh"
в каждой строке, используя shell, а затем вывести модифицированную строку. я написал такой сценарий для этого:Замена подстроки в вводе оболочки
#!/bin/bash
while read line
do
result=${line/.awk/.sh}
echo $result
done
Но это дает мне ошибку: script-ch.sh: 6: script-ch.sh: Bad substitution
.
Как изменить этот простой скрипт, чтобы исправить ошибку?
UPD:".awk"
может быть внутри строки. Например: "file.awk.old"
.
Это работает для меня .. –
Но у меня есть эта ошибка ... – VeLKerr
Какая версия bash вы используете? Какое распределение? Он отлично работает для меня с v4.1.2 на Centos 6.5 –