Deutsch   English   Français   Italiano  
<veeqpn$au42$1@dont-email.me>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Janis Papanagnou <janis_papanagnou+ng@hotmail.com>
Newsgroups: comp.unix.shell
Subject: Re: Different variable assignments
Date: Sat, 12 Oct 2024 23:47:34 +0200
Organization: A noiseless patient Spider
Lines: 34
Message-ID: <veeqpn$au42$1@dont-email.me>
References: <lmt83dFsvbvU3@mid.individual.net>
 <lmt90sFr1idU1@mid.individual.net> <lmta1jFsvc0U1@mid.individual.net>
 <vecl6n$d0r$1@dont-email.me> <lmuniuF632tU1@mid.individual.net>
 <vedlc2$4vi6$1@dont-email.me> <vedofj$5g3v$1@dont-email.me>
 <lmvkisF860uU2@mid.individual.net> <veepth$ao2d$2@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Date: Sat, 12 Oct 2024 23:47:36 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="2cdacf41ca5404b51bb3ae13b0955324";
	logging-data="358530"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX1/SN5pol3eWw5gXge5wFRya"
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101
 Thunderbird/45.8.0
Cancel-Lock: sha1:TahkJRQcQim6cPvrcFfVWTaWYao=
In-Reply-To: <veepth$ao2d$2@dont-email.me>
X-Enigmail-Draft-Status: N1110
Bytes: 2593

On 12.10.2024 23:32, Lawrence D'Oliveiro wrote:
> On Sat, 12 Oct 2024 17:57:16 +0200, Frank Winkler wrote:
> 
>> I'm still thinking about the difference between "< <(...)" and "<<<
>> `...`"
> 
> Not sure about the extra “<”,

'<(...)' executes the command indicated by '...' and provides a file
descriptor, something like '/dev/fd/5', which (being effectively a
filename) can be redirected to the 'read' command.

The shell's 'read' command doesn't read from files but from stdin,
so if 'read's input is in a file or is the output of a command (as in
this case) you have to do a redirection; for the first case
  read < file
and in case of a process substitution (a file named like /dev/fd/5)
  read < <(some command)
which sort of "expands" to something like
  read < /dev/fd/5

So it's no "extra" '<', it's just a necessary redirection for a
command that reads from 'stdin' but not from files.

Janis

> but “<(«cmd»)” gets substituted with the 
> name of a file (i.e. not stdin) that the process can open and read to get 
> the output of «cmd». Similarly “>(«cmd»)” gets substituted with the name 
> of a file (i.e. not stdout) that the process can open and write to feed 
> input to waiting «cmd».
> 
> [...]