On 30 Oct 2020, at 11:25, Bernd Petrovitsch <bernd at petrovitsch.priv.at> wrote:> On 30/10/2020 17:11, @lbutlr wrote: > [...] >> echo $1 | sed -e '|</head>|<style>* {color:white !important; background-color: black !important; } </style></head>|' > > What should the sed stuff do?Changes </head> to <style>* {color:white !important; background-color: black !important; } </style></head>> TTBOMK '|' is not known by sed ...Yes, it most certainly is. (It's the only delimiter I use anymore since it means I never have to deal with escaping /) -- Some people are like a slinky: Totally useless, but you can't help but smile when you push them down the stairs
On Fri, 2020-10-30 at 12:21 -0600, @lbutlr wrote:> On 30 Oct 2020, at 11:25, Bernd Petrovitsch <bernd at petrovitsch.priv.at> wrote: > > On 30/10/2020 17:11, @lbutlr wrote: > > [...] > > > echo $1 | sed -e '|</head>|<style>* {color:white !important; background-color: black !important; } </style></head>|' > > > > What should the sed stuff do? > > Changes </head> to <style>* {color:white !important; background-color: black !important; } </style></head> > > > TTBOMK '|' is not known by sed ... > > Yes, it most certainly is.Perhaps try the script beforehand in a terminal: ---- snip ---- {2}sed -e '|x|y|' sed: -e expression #1, char 1: unknown command: `|' ---- snip ---- So no, it's not. You actually wanted: ---- snip ---- echo $1 | sed -e 's|</head>|<style>* {color:white !important; background-color: black !important; } </style></head>|' ---- snip ---- Or just use bash (and avoid anorther fork()+exec()): ---- snip ---- #!/bin/bash --norc echo ${1/<\/head>/<style>* {color:white !important; background-color: black !important; } <\/style><\/head>}' ---- snip ---- Caveat emptor: Untested! I know all that stuff about sed (GNU-sed and other sed's ..) ... MfG, Bernd -- Bernd Petrovitsch Email : bernd at petrovitsch.priv.at There is no cloud, just other people computers. - FSFE LUGA : http://www.luga.at
On 30 Oct 2020, at 14:41, Bernd Petrovitsch <bernd at petrovitsch.priv.at> wrote:> Perhaps try the script beforehand in a terminal:I have. And I use | as delimiters all the time.> ---- snip ---- > {2}sed -e '|x|y|' > sed: -e expression #1, char 1: unknown command: `|' > ---- snip ---- > So no, it's not.Yes it is. As I said in another post the 's' was lost either in copy/paste or possibly in editing, The shell script works from the command line. $ echo "</head>" | ./darkmode.sh <style>* {color:white !important; background-color: black !important; } </style></head> -- Well, we know where we're goin' But we don't know where we've been And we know what we're knowin' But we can't say what we've seen