用多行文件内容替换字符串

Eme*_*rop 5 command-line bash perl sed text-processing

我需要SALT用另一个文件的内容替换文件中的字符串。问题是输入文件有多行。我在我的 bash 脚本中尝试了这样的事情:

SALT=`cat salt.txt`;
sed "s/SALT/$SALT/" wp-config.php > result.txt
Run Code Online (Sandbox Code Playgroud)

salt.txt是单行时它工作正常,但如果有更多行它会失败。我读过它可以做 PERL。但我不知道怎么做。你可以帮帮我吗?

Syl*_*eau 1

其他perl方式:

perl -pe 's/SALT/`cat salt.txt`/e' wp-config.php > result.txt
Run Code Online (Sandbox Code Playgroud)

这里的关键是/eregexp 选项,它允许我们使用perl命令结果作为替换字符串。