Re: microhelp per script

2023-08-15 Per discussione Paolo Nicorelli
On Mon, 14 Aug 2023 at 21:10, Leonardo Boselli  wrote:

> se lancio un comando
> #mysql -B -u *** -p*** --database *** -e 'select emai from meet where
> lcon>"2020-08-01"'
>
> mi viene fuori un output con ogni riga un record.
> Come faccio a avere una UNICA riga con tutti gli output separati da ',' ?
> (ossia come faccio a passarli a nmail ?)
> (non voglio usare xarg e mandare messaggi separati a ognuno)
>

Se l'output è sotto group_concat_max_len [1] puoi usare direttamente sql

mysql -B -u *** -p*** --database *** -e 'SELECT GROUP_CONCAT(emai SEPARATOR
", ") FROM meet WHERE lcon > "2020-08-01"'

[1]
https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_group_concat_max_len


Re: microhelp per script

2023-08-14 Per discussione Beppe Cantanna
Ho replicato la cosa usando un file di testo che con fantasia ho chiamato
LISTA.

Questo file contiene delle righe. Se ne faccio il cat ottengo un output
formato da tutte le linee del file, che mi pare sia un po' quello che
ottieni tu con la tua query:

bpxroot@hpebian:~$ cat LISTA

22





Per ottenere un unica linea contenente tutte le linee separate da un ';'
posso usare semplicemente il comando tr, sostituendo il fine linea \n con
il carattere di separazione che voglio usare, in questo caso il ';':

bpxroot@hpebian:~$ cat LISTA  | tr \\n ';'
;22;;;;;bpxroot@hpebian:~$


Il doppio \ è per escape. Posso anche usare le ".

bpxroot@hpebian:~$ cat LISTA  | tr "\n" ';'
;22;;;;;bpxroot@hpebian:~$



se mi dà fastidio che metta il prompt sullo stesso livello dello standard
output faccio:

bpxroot@hpebian:~$ echo $(cat LISTA  | tr "\n" ';')
;22;;;;;
bpxroot@hpebian:~$

Al fondo ci sono due ; perché l'ultima linea è vuota.




Il giorno lun 14 ago 2023 alle ore 21:10 Leonardo Boselli <
leo-stre...@trail.it> ha scritto:

> se lancio un comando
> #mysql -B -u *** -p*** --database *** -e 'select emai from meet where
> lcon>"2020-08-01"'
>
> mi viene fuori un output con ogni riga un record.
> Come faccio a avere una UNICA riga con tutti gli output separati da ',' ?
> (ossia come faccio a passarli a nmail ?)
> (non voglio usare xarg e mandare messaggi separati a ognuno)
>
>
> --
> Leonardo Boselli
> Firenze, Toscana, Europa
> http://i.trail.it
>
>

-- 
*CANTANNA Giuseppe*
cel. +39 349 1998700
giuseppe.canta...@glugto.org
canta...@glugto.org
canta...@gmail.com

bproot.bc - Linux user n. 502620 registered on http://counter.li.org/
*Nodo NINUX: *broot*.*


*Per favore non inviatemi allegati in formato MS
Office.Utilizzate alternativamente documenti in formato OpenDocument.*
http://en.wikipedia.org/wiki/OpenDocument
http://it.wikipedia.org/wiki/OpenDocument


http://www.documentfoundation.org/
  https://it.libreoffice.org/


microhelp per script

2023-08-14 Per discussione Leonardo Boselli

se lancio un comando
#mysql -B -u *** -p*** --database *** -e 'select emai from meet where 
lcon>"2020-08-01"'


mi viene fuori un output con ogni riga un record.
Come faccio a avere una UNICA riga con tutti gli output separati da ',' ?
(ossia come faccio a passarli a nmail ?)
(non voglio usare xarg e mandare messaggi separati a ognuno)


--
Leonardo Boselli
Firenze, Toscana, Europa
http://i.trail.it