On Mon Sep 5, 2022 at 10:08 PM CEST, Songbo Wang wrote:
> On 9/5/22 20:57, alice wrote
>  > s6-test -v '\!'
>  > seems to work for me, tested with
>  > env !=1 s6-test -v'\!'
>  > and without the env. maybe i'm misreading it?
>  >
> Your example works for me on bash, but I just tested by the following 
> execline script
>
> #!/usr/bin/execlineb -P
> exec -c s6-test -v !
>
> which gives a parse error to me. Double quoting the ! gives the same 
> error. Single quoting eliminates the error, but doesn't seem to work 
> correctly:
>
> #!/usr/bin/execlineb -P
> export ! 0
> s6-test -v '!'
>
> exits 1. Backslashing ! doesn't work, double quoted or not. Single quote 
> works, but same
>
>
> #!/usr/bin/execlineb -P
> export ! 0
> s6-test -v '\!'
changing this to

s6-test -v \\\!

works as expected. quoting is different in execline, i think there was
more written in some documentation for the specifics, but i think it
needs to both escape the ! and the \ , so it's three levels of \

as a bonus, that also works in normal shell (no quoting in both places)

>
> exits 1.
>
> I wonder if I am stuck in some intricate no-go land of execline or 
> s6-test...
> -- 
> Songbo Wang (汪嵩博)

Reply via email to