ユースケースは、私の場合、最小化される前のCSSファイルの連結です。2つのCSSファイルを連結するには:
cat 1.css 2.css > out.css
1つの位置にテキストを追加するには、次のようにします。
cat 1.css <<SOMESTUFF 2.css > out.css
This will end in the middle.
SOMESTUFF
他の1つのプログラムからSTDOUTを追加するには:
sed 's/foo/bar/g' 3.css | cat 1.css - 2.css > out.css
ここまでは順調ですね。しかし、私は定期的に、著作権ヘッダー、前処理されたファイルなど、いくつかの文字列、ファイル、さらにはプログラム出力を一緒に混合する必要がある状況に遭遇sed(1)
します。順序を自由に選択しながら、できるだけ少ない手順と一時ファイルでそれらを連結したいと思います。
要するに、私はBashで可能な限り少ないステップでこれを行う方法を探しています:
command [string|file|output]+ > concatenated
# note the plus ;-) --------^
(基本的に、cat
複数のSTDINを処理することで十分だと思います。
<(echo "FOO") <(sed ...) <(echo "BAR") cat 1.css -echo1- -sed- 2.css -echo2-
しかし、どうすればそれらにアクセスできるのかわかりません。)