複雑な変数の内容はsedに入力できません。

複雑な変数の内容はsedに入力できません。

ann最初の行は非常に複雑な値を保持する変数です。 2番目の行を使用する理由は、3番目の行では何も変更したくないからですcol1content。置換を変更するには、2行目を別の変数に変更するだけです。

ann="<?php echo '<h2>'.views_get_view('frprev_ann')->get_title().'<\/h2>'; echo views_embed_view('frprev_ann'); ?>"
col1content=`echo $ann`
sed -i 's/r'$rownum'c1content/'$col1content'/g' templates/page--front.tpl.php

ただし、上記のコマンドを実行するとエラーが発生します。

sed: -e expression #1, char 19: unterminated `s' command

最初の行をに変更すると、ann="testtext"すべてがスムーズに機能します。最初の行をに変更するとann="<?first second"失敗します。バックスラッシュを使っても私には役に立ちません。

ベストアンサー1

sed -i 's/r'$rownum'c1content/'"$col1content"'/g' templates/page--front.tpl.php

おすすめ記事