sed
ファイルの内容を次のように連結するために使用しています。
cat source.c | sed -e :a -e '$!N; s/\n/ /; ta'
このファイルには、パイプで区切られた関連情報 [一連の文字列] が含まれています|
。IFS
をパイプに変更|
し、新しいものにパイプすることで出力を取得しIFS
、新しい形式のファイルを標準出力に表示したい。
連結後の source.c のインスタンス:
void f0 (***) | void f1 (***) | void f2 (***)| void f3 (***)
を設定することで達成したいことIFS
:
void f0 (***)
void f1 (***)
void f2 (***)
void f3 (***)
事前に返信ありがとうございます。ファイルで可能かどうかはわかりません。ここで変数や配列を使用したくありません。
EDIT:ソースファイルは最初に次のように表示されます:
void
f0
(***) |
void
f1
(***) |
void f2 (***) |
void f3 (***)
したがって、最初に連結し、次に各単語グループのスペースを 2 倍にしてから、区切り記号としてパイプを使用して分割します。
sed -e :a -e '$!N; s/\n/ /; ta' source.c | sed -e 's/ */ /g' -e 's/ *//'
sed
and のawk
代替は、仕事を完璧に行います。
最初の編集時の賛成票に基づいて選択された回答:) . 回答の1つで示唆されているように、他の人がIFS
.