Привет!
Помогите решить задачу: если в файле есть строки, подходящие под заданное регулярное выражение, то распечатать имя файла и эти строки, предваряя их символом табуляции.
написал такой скрипт:
#!/opt/OpenSource/bin/bash file="VG2T_tstr.pc"; result=$(grep "DFPN .*102.*,.*,.*" "$file"); if [ "$?" -eq "0" ] then echo "File: $file" echo $result; fi
в его выводе получаю:
bash-2.04$ ./test.sh File: VG2T_tstr.pc DFPN 10203,"121",(AD16) DFPN 10204,"125",(AD18) DFPN 10102,"129",(AD20) DFPN 10210,"107",(AD11) DFPN 10209,"112",(AD14) DFPN 10207,"113",(AD15) DFPN 10211,"102",(AD8) DFPN 10212,"100",(C_Be0) DFPN 10206,"120",(C_Be2)
не могу решить две проблемы:
1) почему то теряются символы переноса строки, т.е. сам по себе grep выдает построечно, а применяя его в данном скрипте получаю все в сплошной строке.
2) как можно проставить таблуляции в начало строк-совпадений?