2つの異なるファイルがあります。
File1
/home/user1/
/home/user2/bin
/home/user1/a/b/c
File2
<TEXT1>
<TEXT2>
を使用して<TEXT1>
、File2をFile1のコンテンツに置き換えたいと思いますsed
。このコマンドを試しましたが、適切な出力が得られませんでした。
cat File2|sed "s/<TEXT1>/$(cat File1|sed 's/\//\\\//g'|sed 's/$/\\n/g'|tr -d "\n")/g"
他のツールを使用してこの問題を解決することもできます。
申し訳ありませんが、エラーは発生していません。希望する出力が得られません。出力は次のようになり
—
chanchal1987
/home/user1/ n/home/user2/bin n/home/user1/a/b/cn <TEXT2>
ます。新しい行を取得していません。
わからないこれはあなたの特定のケースに適用されますが、となる場合
—
ステファンギメネス
diff
やpatch
ツールは非常に簡単に他の行で、ファイル内のいくつかの行を交換することができます。
ところで、
—
ステファンギメネス
$()
sedスクリプトで収集されたランダムデータを使用すると、目が出血します。一部の文字が特別な意味で解釈される場所では、外部データを使用しないでください。
—
トビースパイト
sed
実装を教えてください。あなたのコードはGNUで私のために動作しますsed
。