bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Undocumented feature: Unnamed fifo '<(:)'


From: felix
Subject: Re: Undocumented feature: Unnamed fifo '<(:)'
Date: Sun, 28 Jun 2020 18:35:59 +0200
User-agent: Mutt/1.10.1 (2018-07-13)

In order to prevent ressource eating, once `date -f - +%s` runned as 
background, date_to_epoch will become:

$ exec 8<> <(:)
$ exec 9> >(exec stdbuf -o0 date -f - +%s >&8 2>&8)
$ date_to_epoch() {
    echo >&9 ${@:2}
    read -t 1 -u 8 ${1:-answeredEpoch}
}

$ date_to_epoch _out 2009-02-13 23:31:30 UTC
$ echo $_out
1234567890

U could test my demo script at 
    https://f-hauri.ch/vrac/date1fork-demo.sh.txt

or check for my `shell_connector' at 
    https://f-hauri.ch/vrac/shell_connector.sh.txt

This is not only interesting for `date`! I use them with `bc`, `tput`,
and lot of other applications, upto `sqlite`, `mysql` and `postgresql`
with ability of playing with temporary tables and other session related
stuff...    

On Sun, Jun 28, 2020 at 10:55:59AM -0500, Dennis Williamson wrote:
> date_to_epoch () {
>     date -d "$1" +%s
> }
> 
> _out=$(date_to_epoch "$_string")


> On Sun, Jun 28, 2020, 8:50 AM felix <felix@f-hauri.ch> wrote:
> > ...
> >     _fifo=$(mktemp -u /tmp/fifo-XXXXXXXX)
> >     mkfifo $_fifo
> >     exec 9> >(exec stdbuf -o0 date -f - +%s >$_fifo 2>&1)
> >     exec 8<$_fifo
> >     rm $_fifo
> >
> > Then to convert human datetime to UNIX SECONDS:
> >         echo >&9 $_string
> >         read -t 1 -u 8 _out

-- 
 Félix Hauri  -  <felix@f-hauri.ch>  -  http://www.f-hauri.ch



reply via email to

[Prev in Thread] Current Thread [Next in Thread]