LINUX.ORG.RU

Хотел предложить однострочник на питоне, но мне внезапно стало жутко лень тратить время на такую херню. А в чём у тебя проблема, задача то тривиальная?

anonymous ()
Ответ на: комментарий от zvezdochiot

Не не чутка не так


есть текст в таком формате "text1":"text2" "text3" "text4" "text5"
пусть ставит кавычки как и ставил, но не ставил в двоеточии : 
(не нужно после каждого текста ставить двоеточие, просто исключить кавычки в ней)

vbox ()
Ответ на: комментарий от vbox

как уставить еще запятую в конце строки?

echo "text1:text2 text3 text4 text5" | sed -e 's/^/\"/;s/\:/\":\"/g;s/ /\", \"/g;s/$/\",/;'

И прочитай уже Advanced Bash-Scripting Guide: Искусство программирования на языке сценариев командной оболочки, наконец.

zvezdochiot ()
Последнее исправление: zvezdochiot (всего исправлений: 1)
Ответ на: комментарий от anonymous

Немножк безумия.

Да, не годится для спецсимволов вместо text*. И можно же сделать красиво и универсально:

first=", "
while read -a line; do
  out=
  for i in ${!line[@]}; do
    out+="${first:i==0?2:0}\"${line[i]}\""
  done
  echo "$out"
done

vodz ★★★★ ()