首页 > 解决方案 > 使用 sed 在文件开头添加多行变量

问题描述

我正在尝试使用 sed 在文件开头写 3 行。我决定将这些分配给变量,因为它们是很长的文本,而且更容易阅读。

我正在尝试添加:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wo-national-phase-information SYSTEM "wo-national-phase-information-v1-5.dtd">
<wo-national-phase-information country='US' file-name='US-IB-FEB-2019.xml'>

我已将每个分配给: SED_HELPER_ONE SED_HELPER_TWO SED_HELPER_THREE

分别。另外,是否可以在 sed 命令中使用变量?

标签: bashsh

解决方案


我什至不会用sed这个。相反,使用cat

cat - foo.xml > tmp <<EOF && mv tmp foo.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wo-national-phase-information SYSTEM "wo-national-phase-information-v1-5.dtd">
<wo-national-phase-information country='US' file-name='US-IB-FEB-2019.xml'>
EOF

推荐阅读