(BLANK の代わりに _ を使用し、改行の代わりに \n を使用して、状況をより適切に説明します:)
私が実行すると
str_text=`vilistextum -u -p - - <<< "$str_html"`;
printf "$str_text"
アウトポットは次のようなものです:
THISISA言葉 \n_ \n___ \n_ アナザーワード \n_ ... \n__ アナザーワード \n \n \n__ \n_
変数内の文字列から連続\n
\n
し\n \n
て 1 つだけを置き換えるにはどうすればよいですか? \n
連続する改行をひとつにまとめたい。私が取得したいのは次のようなものです:
THISISAWord
\n
ANOTHERWORD
\n
ANOTHERWORD
私は次のようなものを試しました
str_text=`vilistextum -u -p - - <<< "$str_html" | sed 's/\n//g'`;
しかし、私が想像しているようにsedは機能していません。
==== ソリューション ====
ファイルに保存せずにHTML 3.2よりも高いものをテキストに変換したい場合(魔女はパフォーマンスを殺します)、次を使用します
str_text=$(vilistextum - - <<< "$str_html");
str_text=$(awk 'NF{print $0}' ORS='\n' <<< "$str_text");
str_text=$(sed 's/\\n//g' <<< "$str_text" );
どうもありがとうございました。