Проблема, вероятно, в пробеле - код line=$1
установил бы $line
в "name.surname@email.com; KF-2514" .Таким образом, sed
не увидит пробела и, следовательно, не напечатает ничего.
Попробуйте изменить $1
на $@
, потеряв ненужные переменные, плюс измените sed
немного код:
Comments (){ echo "$@" | sed -n 's/^[^ ]* //p') ; }
Comments 'name.surname@email.com;KF-2514 WE NEED TO TALK A LOT'
Вывод:
WE NEED TO TALK A LOT
Чтобы использовать вышеуказанную функцию для файла с именем foo , попробуйте:
while read x; do Comments "$x" ; done < foo
Но если файл был входным, было бы проще использовать sed
без какой-либо функции-оболочки:
sed -n 's/^[^ ]* //p' foo