fork download
  1. #!/bin/bash
  2.  
  3. # ideone boilerplate: run in temp dir
  4. t=$(mktemp -d -t ideone.XXXXXXXX) || exit
  5. trap 'rm -rf "$t"' ERR EXIT
  6. cd "$t"
  7.  
  8. cat <<\: >input.txt
  9. there is a foo
  10. in your bar
  11. :
  12.  
  13. cat <<\: >test.txt
  14. <body>
  15. <div>PLACE_HOLDER</div>
  16. </body>
  17. :
  18.  
  19. sed 's/\&/\\&/g
  20. 1s/^/s\&PLACE_HOLDER\&/
  21. $!s/$/\\/
  22. $s/$/\&/' input.txt
  23.  
  24. echo ----------
  25.  
  26. sed 's/\&/\\&/g 1s/^/s\&PLACE_HOLDER\&/ $!s/$/\\/ $s/$/\&/' input.txt | sed -f - test.txt
  27.  
Success #stdin #stdout #stderr 0.02s 5284KB
stdin
Standard input is empty
stdout
s&PLACE_HOLDER&there is a foo\
in your bar&
----------
<body>
  <div>PLACE_HOLDER</div>
</body>
stderr
sed: -e expression #1, char 13: unknown option to `s'