タグ

置換に関するasa_ca3のブックマーク (1)

  • sed で \ を含む文字列に置換

    現在、非常に多数のドキュメントの整形を LaTeXを使って自動的に行っています。 問題となっている処理のエッセンスを抜き出すと次のようなもので、テンプレートファイル中の __PATTERN__ という文字列を、その都度指定する文字列($string)に置換した後にplatexでコンパイルする、という流れです。 ---------- #!/bin/bash sed "s/__PATTERN__/$string/" < template.tex > document.tex platex document.tex ---------- 問題は、$string に '_'(アンダーバー)が含まれるケースで、platexのコンパイルでエラーが発生します。 これを回避するには、'_' を '\_' に置換する必要がありますが、上記処理の前に、$string 中の '_' を '\_' に置換する処理

    sed で \ を含む文字列に置換
  • 1