From: Paul Hänsch Date: Thu, 9 May 2019 13:35:36 +0000 (+0200) Subject: portable sed invocations X-Git-Url: http://git.plutz.net/?p=cgilite;a=commitdiff_plain;h=9e0b6937398c13c0dabe5234acaaf84298219ab5 portable sed invocations --- diff --git a/file.sh b/file.sh index b6118f5..51ec245 100755 --- a/file.sh +++ b/file.sh @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2016 - 2018 Paul Hänsch +# Copyright 2016 - 2019 Paul Hänsch # # This file is part of cgilite. # @@ -59,7 +59,7 @@ FILE(){ # Parse the allowable date formats from Section 3.3.1 of # https://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html HEADER If-Modified-Since \ - | sed -r 's;^[^ ]+, ([0-9]{2}) (...) ([0-9]{4}) (..:..:..) GMT$;\3-\2-\1 \4;; + | sed -E 's;^[^ ]+, ([0-9]{2}) (...) ([0-9]{4}) (..:..:..) GMT$;\3-\2-\1 \4;; s;^[^ ]+, ([0-9]{2})-(...)-([789][0-9]) (..:..:..) GMT$;19\3-\2-\1 \4;; s;^[^ ]+, ([0-9]{2})-(...)-([0-6][0-9]) (..:..:..) GMT$;20\3-\2-\1 \4;; s;^[^ ]+ (...) ([0-9]{2}) (..:..:..) ([0-9]{4})$;\4-\1-\2 \3;; @@ -69,7 +69,7 @@ FILE(){ | xargs -r0 date +%s -ud 2>&- )" - range="$(HEADER Range |sed -nr 's;^bytes=([0-9]+-[0-9]*|-[0-9]+)$;\1;p;q;')" + range="$(HEADER Range |sed -nE 's;^bytes=([0-9]+-[0-9]*|-[0-9]+)$;\1;p;q;')" case "$range" in *-) range="${range}$((file_size - 1))";; -*) [ ${range#-} -le $file_size ] \ diff --git a/storage.sh b/storage.sh index 0d09b26..10a8029 100755 --- a/storage.sh +++ b/storage.sh @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2018 Paul Hänsch +# Copyright 2018, 2019 Paul Hänsch # # This is a file format helper, part of CGIlite. # @@ -74,7 +74,7 @@ STRING=' STRING(){ { [ $# -eq 0 ] && cat || printf %s "$*"; } \ - | sed -r ':X; $!{N;bX;}'"$STRING" + | sed -E ':X; $!{N;bX;}'"$STRING" } UNSTRING=' @@ -89,5 +89,5 @@ UNSTRING=' ' UNSTRING(){ { [ $# -eq 0 ] && cat || printf %s "$*"; } \ - | sed -r "$UNSTRING" + | sed -E "$UNSTRING" }