• cron che non accetta opzioni

    From Leonardo Boselli@21:1/5 to All on Fri Nov 1 22:00:01 2024
    # m h dom mon dow command
    34 * * * * echo -n $(/usr/bin/date '+%%F\ %%T,') >> /home/leo/templog.csv
    35 * * * * echo -n $(/usr/bin/date +%%F\ %%T, ) >> /home/leo/templog.csv
    48 * * * * echo -n $(/usr/bin/date) >> /home/leo/templog.csv

    34 e 35 funzionano regolarmente da linea di comando.
    ma da cron non vanno: la prima mi da
    /bin/sh: 1: Syntax error: Unterminated quoted string

    e la seconda
    /bin/sh: 1: Syntax error: end of file unexpected (expecting ")")

    la numero 48 funziona, ma non scrive quello che vorrei.
    come risolvo ?

    --
    Leonardo Boselli
    Firenze, Toscana, Europa

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From spv65@mailbox.org@21:1/5 to Leonardo Boselli on Sat Nov 2 05:20:01 2024
    On 011124, 21:51, Leonardo Boselli wrote:
    # m h dom mon dow command
    34 * * * * echo -n $(/usr/bin/date '+%%F\ %%T,') >> /home/leo/templog.csv
    35 * * * * echo -n $(/usr/bin/date +%%F\ %%T, ) >> /home/leo/templog.csv
    48 * * * * echo -n $(/usr/bin/date) >> /home/leo/templog.csv

    34 e 35 funzionano regolarmente da linea di comando.
    ma da cron non vanno: la prima mi da
    /bin/sh: 1: Syntax error: Unterminated quoted string

    e la seconda
    /bin/sh: 1: Syntax error: end of file unexpected (expecting ")")

    la numero 48 funziona, ma non scrive quello che vorrei.
    come risolvo ?

    --
    Leonardo Boselli
    Firenze, Toscana, Europa


    --

    Proverei a mettere tutto all'interno di uno scrip e poi pianificare
    quello.

    S.

    Stefano Pardini
    Sent from my Linux debian

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Giuseppe Sacco@21:1/5 to All on Sat Nov 2 08:50:01 2024
    Buongiorno Leonardo,

    Il giorno ven, 01/11/2024 alle 21.51 +0100, Leonardo Boselli ha
    scritto:
    # m h  dom mon dow   command
    34 * * * * echo -n $(/usr/bin/date '+%%F\ %%T,') >>
    /home/leo/templog.csv
    35 * * * * echo -n $(/usr/bin/date +%%F\ %%T, ) >>
    /home/leo/templog.csv
    48 * * * * echo -n $(/usr/bin/date) >> /home/leo/templog.csv

    34 e 35 funzionano regolarmente da linea di comando.
    ma da cron non vanno: la prima mi da
    /bin/sh: 1: Syntax error: Unterminated quoted string

    il carattere % nelle righe di comando di crontab indica che il comando
    finisce lì e quello che segue verrà dato in input al comando stesso.
    Puoi anteporgli il \ per togliergli quel significato.

    Per i dettagli: man 5 crontab

    Ciao,
    Giuseppe

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Leonardo Boselli@21:1/5 to spv65@mailbox.org on Sun Nov 3 17:10:01 2024
    This message is in MIME format. The first part should be readable text,
    while the remaining parts are likely unreadable without MIME-aware tools.

    On Sat, 2 Nov 2024, spv65@mailbox.org wrote:
    Proverei a mettere tutto all'interno di uno scrip e poi pianificare
    quello.

    si, ha funzionato (e comeunque il problema era nel %), ma
    ora ho un altro problema:
    dopo quel campo nel file ci debbono andare altri due campi, presi da due
    altri programmi per ora ho rimediato con un programma in C, ma non è molto portatile.
    Questi programmi mi mandano fuori un formato simile [praticamante
    identico] a quello di sensors, ossia

    nome record1
    nome campo1: <valore1><Unità di misura1>
    nome campo2: <valore2><Unità di misura2>
    \n
    e così ripetuto per tante volte.

    faccio notare che nome campo può essere qualsiasi sequenza di caratteri, compreso lo spazio, e il separatore è il ':'
    <valore> contiene solo [0-9.+-] e <unità di misura> qualsiasi sequenza che
    non inizia per una cifra e può essere o meno separata da uno o più spazi
    (in pratica gli spazi vengono ignorati eccetto il newline).
    Usando uno script standard unix come estraggo <valore> passandogli come parametri <nome record> e <nome campo> ?
    ancora più difficile: il file con questi dati è su un altra macchina e lo ottengo con curl.

    --
    Leonardo Boselli
    Firenze, Toscana, Europa

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Piviul@21:1/5 to Leonardo Boselli on Mon Nov 4 09:00:01 2024
    On 11/3/24 17:00, Leonardo Boselli wrote:
    si, ha funzionato (e comeunque il problema era nel %), ma ora ho un
    altro problema:
    dopo quel campo nel file ci debbono andare altri due campi, presi da
    due altri programmi per ora ho rimediato con un programma in C, ma non
    è molto portatile.
    Questi programmi mi mandano fuori un formato simile [praticamante
    identico] a quello di sensors, ossia

    nome record1
    nome campo1: <valore1><Unità di misura1>
    nome campo2: <valore2><Unità di misura2>
    \n
    e così ripetuto per tante volte.

    faccio notare che nome campo può essere qualsiasi sequenza di
    caratteri, compreso lo spazio, e il separatore è il ':'
    <valore> contiene solo [0-9.+-] e <unità di misura> qualsiasi sequenza
    che non inizia per una cifra e può essere o meno separata da uno o più spazi (in pratica gli spazi vengono ignorati eccetto il newline).
    Usando uno script standard unix come estraggo <valore> passandogli
    come parametri <nome record> e <nome campo> ?
    ancora più difficile: il file con questi dati è su un altra macchina e
    lo ottengo con curl.

    Hai provato con cut e subshell? Qualcosa tipo $(<tuo comando> | cut -f1
    -d:) per il nome campo e analogamente per il valore compreso di unità di misura. Se, come mi sembra, vuoi anche togliere l'unità di misura e il
    tuo valore quindi comprende solo numeri in formato anglosassone qualcosa
    del genere dovrebbe funzionare: $(<tuo comando> | cut -f2 -d: | egrep -o '^([0-9]*[.]*[0-9]*)');

    ...sempre che abbia capito bene

    Piviul

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Leonardo Boselli@21:1/5 to Piviul on Mon Nov 4 10:00:01 2024
    This message is in MIME format. The first part should be readable text,
    while the remaining parts are likely unreadable without MIME-aware tools.

    On Mon, 4 Nov 2024, Piviul wrote:

    dovrebbe funzionare: $(<tuo comando> | cut -f2 -d: | egrep -o '^([0-9]*[.]*[0-9]*)');

    ...sempre che abbia capito bene

    no, non hai capito tutta la domanda: quella parte era la parte semplice.
    quello che mi serve è dare un comando
    $(<mio comando>) | filtrodipiviul "record" "campo"
    per intendersi, usando come comando sensors , che tutti hanno e possono provare, e che fornisce i dati proprio in quel formato (ogni macchina li
    da differentemente quindi adattate l'esempio se ho l'output
    …
    coretemp-isa-0000
    Adapter: ISA adapter
    Package id 0: +33.0°C (high = +100.0°C, crit = +100.0°C)
    Core 0: +32.0°C (high = +100.0°C, crit = +100.0°C)
    Core 1: +31.0°C (high = +100.0°C, crit = +100.0°C)

    dell_smm-isa-0000
    Adapter: ISA adapter
    Processor Fan: 2716 RPM (min = 0 RPM, max = 4900 RPM)
    CPU: +33.0°C
    Ambient: +27.0°C
    SODIMM: +27.0°C

    acpitz-acpi-0
    Adapter: ACPI interface
    temp1: +25.0°C (crit = +107.0°C)

    iwlwifi_1-virtual-0
    Adapter: Virtual device
    temp1: +33.0°C
    …

    allora
    filtrodipiviul acpitz-acpi-0 temp1
    dovrebbe restituirmi "+25.0" (o anche 25)
    e
    filtrodipiviul dell_smm-isa-0000 "Processor Fan"
    dovrebbe restituirmi "2716"

    sono stato più chiaro ?

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

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Leonardo Boselli@21:1/5 to Piviul on Mon Nov 4 12:00:01 2024
    This message is in MIME format. The first part should be readable text,
    while the remaining parts are likely unreadable without MIME-aware tools.

    esatto !

    On Mon, 4 Nov 2024, Piviul wrote:
    e
     filtrodipiviul dell_smm-isa-0000 "Processor Fan"
    dovrebbe restituirmi "2716"

    sono stato più chiaro ?

    Sai che ancora non ho capito? Vuoi una funzione che prende in input ad esempio "dell_smm-isa-0000" "Processor Fan" e restituisca il valore presente nell'output di sensors per il "Processor Fan" dell'adapter dell_smm-isa-0000?

    --
    Leonardo Boselli
    Firenze, Toscana, Europa

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Piviul@21:1/5 to Leonardo Boselli on Mon Nov 4 11:50:01 2024
    On 11/4/24 09:51, Leonardo Boselli wrote:
    On Mon, 4 Nov 2024, Piviul wrote:

    dovrebbe funzionare: $(<tuo comando> | cut -f2 -d: | egrep -o
    '^([0-9]*[.]*[0-9]*)');

    ...sempre che abbia capito bene

    no, non hai capito tutta la domanda: quella parte era la parte semplice. quello che mi serve è dare un comando
    $(<mio comando>) | filtrodipiviul "record" "campo"
    per intendersi, usando come comando sensors , che tutti hanno e
    possono provare, e che fornisce i dati proprio in quel formato (ogni
    macchina li da differentemente quindi adattate l'esempio se ho l'output
    …
    coretemp-isa-0000
    Adapter: ISA adapter
    Package id 0:  +33.0°C  (high = +100.0°C, crit = +100.0°C)
    Core 0:        +32.0°C  (high = +100.0°C, crit = +100.0°C)
    Core 1:        +31.0°C  (high = +100.0°C, crit = +100.0°C)

    dell_smm-isa-0000
    Adapter: ISA adapter
    Processor Fan: 2716 RPM  (min =    0 RPM, max = 4900 RPM) CPU:            +33.0°C
    Ambient:        +27.0°C
    SODIMM:         +27.0°C

    acpitz-acpi-0
    Adapter: ACPI interface
    temp1:        +25.0°C  (crit = +107.0°C)

    iwlwifi_1-virtual-0
    Adapter: Virtual device
    temp1:        +33.0°C
    …

    allora
     filtrodipiviul acpitz-acpi-0 temp1
    dovrebbe restituirmi "+25.0" (o anche 25)
    e
     filtrodipiviul dell_smm-isa-0000 "Processor Fan"
    dovrebbe restituirmi "2716"

    sono stato più chiaro ?

    Sai che ancora non ho capito? Vuoi una funzione che prende in input ad
    esempio "dell_smm-isa-0000" "Processor Fan" e restituisca il valore
    presente nell'output di sensors per il "Processor Fan" dell'adapter dell_smm-isa-0000?

    Piviul

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Leonardo Boselli@21:1/5 to Diego Zuccato on Mon Nov 4 13:50:01 2024
    This message is in MIME format. The first part should be readable text,
    while the remaining parts are likely unreadable without MIME-aware tools.

    Quasi esatto:

    if [[ "$K" == "$2" ]]; then
    deve essere con $3

    ma una cosa non ho capito:
    l'imput è su stdio [che esce da curl] e non nsu textfile. come lo cambio ?


    On Mon, 4 Nov 2024, Diego Zuccato wrote:

    Direi che devi fare una funzione che faccia il parsing tipo:
    -8<--
    #!/bin/bash

    # parsefile outvar sezione chiave
    function parsefile {
    local -n result=$1
    while read A; do
    if [[ "$A" == "$2" ]]; then
    # Trovata la sezione, cerca la entry
    while read L; do
    if [[ "$L" =~ .+:.+ ]]; then
    # L è nel formato key:value
    IFS=":" read K V <<<"$L"
    # Rimuove gli spazi
    V=$(echo $V| xargs)
    if [[ "$K" == "$2" ]]; then
    result=$V
    return 0
    fi
    else
    # Errore: fine sezione/file
    return 1
    fi
    done
    fi
    done
    }

    val=""

    parsefile val acpitz-acpi-0 temp1 < testfile.txt

    echo "$val"
    -8<--

    (questo ritorna come valore tutto il campo, poi puoi farne un ulteriore parsing come ti serve)

    Diego

    Il 04/11/2024 09:51, Leonardo Boselli ha scritto:
    On Mon, 4 Nov 2024, Piviul wrote:

    dovrebbe funzionare: $(<tuo comando> | cut -f2 -d: | egrep -o
    '^([0-9]*[.]*[0-9]*)');

    ...sempre che abbia capito bene

    no, non hai capito tutta la domanda: quella parte era la parte semplice.
    quello che mi serve è dare un comando
    $(<mio comando>) | filtrodipiviul "record" "campo"
    per intendersi, usando come comando sensors , che tutti hanno e possono
    provare, e che fornisce i dati proprio in quel formato (ogni macchina li da >> differentemente quindi adattate l'esempio se ho l'output
    …
    coretemp-isa-0000
    Adapter: ISA adapter
    Package id 0:  +33.0°C  (high = +100.0°C, crit = +100.0°C)
    Core 0:        +32.0°C  (high = +100.0°C, crit = +100.0°C)
    Core 1:        +31.0°C  (high = +100.0°C, crit = +100.0°C)

    dell_smm-isa-0000
    Adapter: ISA adapter
    Processor Fan: 2716 RPM  (min =    0 RPM, max = 4900 RPM)
    CPU:            +33.0°C
    Ambient:        +27.0°C
    SODIMM:         +27.0°C

    acpitz-acpi-0
    Adapter: ACPI interface
    temp1:        +25.0°C  (crit = +107.0°C)

    iwlwifi_1-virtual-0
    Adapter: Virtual device
    temp1:        +33.0°C
    …

    allora
     filtrodipiviul acpitz-acpi-0 temp1
    dovrebbe restituirmi "+25.0" (o anche 25)
    e
     filtrodipiviul dell_smm-isa-0000 "Processor Fan"
    dovrebbe restituirmi "2716"

    sono stato più chiaro ?

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

    --
    Diego Zuccato
    DIFA - Dip. di Fisica e Astronomia
    Servizi Informatici
    Alma Mater Studiorum - Università di Bologna
    V.le Berti-Pichat 6/2 - 40127 Bologna - Italy
    tel.: +39 051 20 95786



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

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Piviul@21:1/5 to Leonardo Boselli on Mon Nov 4 14:40:01 2024
    On 11/4/24 14:27, Leonardo Boselli wrote:
    ./pivtest.sh: line 10: syntax error near unexpected token `then' ./pivtest.sh: line 10: `    if [ $found -eq 1 ]; then'

    per poterti aiutare bisognerebbe vedere pivtest.sh...

    Piviul

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Piviul@21:1/5 to Leonardo Boselli on Mon Nov 4 14:20:01 2024
    On 11/4/24 11:52, Leonardo Boselli wrote:
    esatto !

    Quindi qualcosa del genere?

    $ cat .bin/myscript.sh
    #/bin/bash

    stanza=$1
    field=$2

    found=0
    while read -r line
    do
        f1=$(echo $line | cut -f1 -d:);
        if [ $found -eq 1 ]; then
            f2=$(echo $line | cut -f2 -d: | sed 's/^[[:space:]]*//');         if [ "$f1" = "$field" ]; then
                echo $f2 | egrep -o '^[[:space:]]*([\+]*[0-9]*[.]*[0-9]*)';
                found=0
                break;
            else
                continue
            fi
        else
            [ "$f1" = "$stanza" ] && found=1 && continue
        fi
    done

    $ sensors | .bin/myscript.sh "coretemp-isa-0000" "Core 5"
    +23.0

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Leonardo Boselli@21:1/5 to Piviul on Mon Nov 4 14:50:02 2024
    This message is in MIME format. The first part should be readable text,
    while the remaining parts are likely unreadable without MIME-aware tools.

    ./pivtest.sh: line 10: syntax error near unexpected token `then'
    ./pivtest.sh: line 10: `    if [ $found -eq 1 ]; then'

    On Mon, 4 Nov 2024, Piviul wrote:

    On 11/4/24 11:52, Leonardo Boselli wrote:
    esatto !

    Quindi qualcosa del genere?

    $ cat .bin/myscript.sh
    #/bin/bash

    stanza=$1
    field=$2

    found=0
    while read -r line
    do
        f1=$(echo $line | cut -f1 -d:);
        if [ $found -eq 1 ]; then
            f2=$(echo $line | cut -f2 -d: | sed 's/^[[:space:]]*//');
            if [ "$f1" = "$field" ]; then
                echo $f2 | egrep -o '^[[:space:]]*([\+]*[0-9]*[.]*[0-9]*)';
                found=0
                break;
            else
                continue
            fi
        else
            [ "$f1" = "$stanza" ] && found=1 && continue
        fi
    done

    $ sensors | .bin/myscript.sh "coretemp-isa-0000" "Core 5"
    +23.0




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

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Piviul@21:1/5 to Leonardo Boselli on Mon Nov 4 15:30:01 2024
    This is a multi-part message in MIME format.
    On 11/4/24 14:58, Leonardo Boselli wrote:
    è la copia di qiello che hai podtato.

    a me non da alcun errore alla linea 10, non conosco il tuo ambiente e
    non si capisce perché non ci hai voluto mandare lo script che hai creato
    che dici essere uguale al mio... Tani modi provo a ripostartelo in
    allegato a questo messaggio.

    Piviul

    Iy9iaW4vYmFzaAoKc3RhbnphPSQxCmZpZWxkPSQyCgpmb3VuZD0wCndoaWxlIHJlYWQgLXIg bGluZQpkbwogICAgZjE9JChlY2hvICRsaW5lIHwgY3V0IC1mMSAtZDopOyAKICAgIGlmIFsg JGZvdW5kIC1lcSAxIF07IHRoZW4KICAgICAgICBmMj0kKGVjaG8gJGxpbmUgfCBjdXQgLWYy IC1kOiB8IHNlZCAncy9eW1s6c3BhY2U6XV0qLy8nKTsgCiAgICAgICAgaWYgWyAiJGYxIiA9 ICIkZmllbGQiIF07IHRoZW4KICAgICAgICAgICAgZWNobyAkZjIgfCBlZ3JlcCAtbyAnXltb OnNwYWNlOl1dKihbXCtdKlswLTldKlsuXSpbMC05XSopJzsgCiAgICAgICAgICAgIGZvdW5k PTAKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgZWxzZQogICAgICAgICAgICBjb250aW51 ZQogICAgICAgIGZpCiAgICBlbHNlIAogICAgICAgIFsgIiRmMSIgPSAiJHN0YW56YSIgXSAm JiBmb3VuZD0xICYmIGNvbnRpbnVlCiAgICBmaQpkb25lCgo=

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?utf-8?Q?Francesco_Potort=C3=AC?=@21:1/5 to All on Sat Nov 9 12:30:01 2024
    no ... ho fatto una prova e il problema è più sottile: nel primo messaggio ho tolto i > ma gli spazi erano ... NBSP ( U+00A0 ) e pare che bash non sia tanto tollerante.
    Anche diff, malgrado il -b li vedeva diversi, ma non lo faceva vedere [sul terminale con spaziatura fissa la rappresentazione di SP e NBSP è identica]

    Perdonatemi, ma cosa è NBSP ( U+00A0 )?

    non-breaking space, che in latin-1 e latin-9 (e immagino anche in altri) ha il codice 160, cioè 0xA0, e in utf-8 è 0xC2A0

    E come li hai visti?

    Dipende dall'editor che usi e da come lo imposti.

    Spesso mi imbatto in problemi simili ed ogni volta l'unica soluzione che trovo, è quella di cancellare gli spazi e rimetterli. Finché sono una decina di righe va pure bene ma quando di tratta di un centinaio, inizia a diventare un problema.

    Se col tuo editor non trovi un metodo più pratico, e se sei sicuro che il tuo file non sia in utf-8, ma in latin-1 o latin-9 o simili, puoi provare con questo filtro:

    tr '\f\v\240' '\n\n '

    Ma se ci sono caratteri utf-8 di più di un byte puoi fare danni, quindi da usare con giudizio. Si possono inventare metodi più sicuri e generali, ma sono più complessi, almeno quelli che mi vengono in mente.

    --
    fp

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Piviul@21:1/5 to Leonardo Boselli on Tue Nov 5 09:50:01 2024
    On 11/4/24 16:38, Leonardo Boselli wrote:
    lo script che non funzina lo ho copiato apri pari
    e il risultato di diff è:

    [...]
    quelloc he mi hai mandato come attachment non da errori (a parte che
    accetta solo Core 0 e Core 1) ma come ho detto ogni macchian ha un
    differente output. (e lo ho copiato uguale, con on copy&paste dal
    messaggio.)

    io ti ho mandato sempre e solo uno script, la prima volta quotato dentro
    un messaggio e la seconda come allegato, non so come tu lo abbia
    trasformato e faccio fatica ad aiutarti su questo. Inoltre, almeno sul
    mio pc, lo script funziona e questo ad esempio è il risultato sul mio PC:

    $ sensors && sensors | .bin/myscript.sh "coretemp-isa-0000" "Core 0"
    && sensors | .bin/myscript.sh "coretemp-isa-0000" "Core 1" && sensors
    | .bin/myscript.sh "acpitz-acpi-0" "temp1" && sensors |
    .bin/myscript.sh "iwlwifi_1-virtual-0" "temp1"
    coretemp-isa-0000
    Adapter: ISA adapter
    Package id 0:  +28.0°C  (high = +80.0°C, crit = +100.0°C)
    Core 0:        +26.0°C  (high = +80.0°C, crit = +100.0°C)
    Core 1:        +25.0°C  (high = +80.0°C, crit = +100.0°C)
    Core 2:        +26.0°C  (high = +80.0°C, crit = +100.0°C)
    Core 3:        +25.0°C  (high = +80.0°C, crit = +100.0°C)
    Core 4:        +25.0°C  (high = +80.0°C, crit = +100.0°C)
    Core 5:        +25.0°C  (high = +80.0°C, crit = +100.0°C)

    acpitz-acpi-0
    Adapter: ACPI interface
    temp1:        +27.8°C  (crit = +105.0°C)

    iwlwifi_1-virtual-0
    Adapter: Virtual device
    temp1:        +30.0°C

    +26.0
    +25.0
    +27.8
    +30.0

    Se poi vuoi cercare di capire come funziona su questo ci possiamo
    confrontare ma se non riesci a farlo funzionare non so, bisognerebbe che
    ci dessi lo script (dire che è quello che ti ho dato io non è credibile
    dal momento che te ne ho dato uno e tu ne hai 2 diversi) e le anomalie
    che rilevi altrimenti è molto difficile aiutarti.

    Piviul

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Leonardo Boselli@21:1/5 to Piviul on Tue Nov 5 10:30:01 2024
    This message is in MIME format. The first part should be readable text,
    while the remaining parts are likely unreadable without MIME-aware tools.

    On Tue, 5 Nov 2024, Piviul wrote:

    On 11/4/24 16:38, Leonardo Boselli wrote:
    lo script che non funzina lo ho copiato apri pari
    e il risultato di diff è:

    leo@h7136:~$ diff -b -Z -E pivtest.sh pivtesto.sh
    9,21c9,21
    <     f1=$(echo $line | cut -f1 -d:);
    <     if [ $found -eq 1 ]; then

    ...credo di aver capito. Il primo script te l'ho quotato nel messaggio in solo testo. Se tu lo copi e lo metti in un file .sh devi togliergli il carattere di quote (>) all'inizio di ogni riga.
    Piviul

    no ... ho fatto una prova e il problema è più sottile: nel primo messaggio
    ho tolto i > ma gli spazi erano ... NBSP ( U+00A0 ) e pare che bash non
    sia tanto tollerante.
    Anche diff, malgrado il -b li vedeva diversi, ma non lo faceva vedere [sul terminale con spaziatura fissa la rappresentazione di SP e NBSP è
    identica]


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

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Piviul@21:1/5 to Leonardo Boselli on Tue Nov 5 10:50:01 2024
    On 11/5/24 10:18, Leonardo Boselli wrote:
    no ... ho fatto una prova e il problema è più sottile: nel primo
    messaggio ho tolto i > ma gli spazi erano ... NBSP ( U+00A0 ) e pare
    che bash non sia tanto tollerante.
    Anche diff, malgrado il -b li vedeva diversi, ma non lo faceva vedere
    [sul terminale con spaziatura fissa la rappresentazione di SP e NBSP è identica]

    beh, abbiamo capito che hai avuto delle difficoltà a generare lo script quotato in un messaggio di posta ma lo script che ti ho mandato in
    allegato, lo hai provato?

    Piviul

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Leonardo Boselli@21:1/5 to Piviul on Tue Nov 5 11:10:01 2024
    This message is in MIME format. The first part should be readable text,
    while the remaining parts are likely unreadable without MIME-aware tools.

    certo, funziona perfettamente ....
    però ammetti che il problema del NBSP anziché di un SP nel messggio di
    posta era molto invisibile .....
    (quando ho visto il risultato di diff ho fatto un hd dei due script, che avevano lunghegzza diversa, e scoperto il problema)

    On Tue, 5 Nov 2024, Piviul wrote:
    beh, abbiamo capito che hai avuto delle difficoltà a generare lo script quotato in un messaggio di posta ma lo script che ti ho mandato in allegato, lo hai provato?

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

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Lem@21:1/5 to All on Tue Nov 5 13:50:01 2024
    Il giorno mar, 05/11/2024 alle 13.25 +0100, Lem ha scritto:
    BTW: l'ho scritta di getto, senza controllare più di tanto: meglio
    pigliarla cum grano salis.

    Ecco, appunto. Meglio aggiungere il quoting fra virgolette doppie ai
    parametri posizionali, per esempio:

    | $ filtro () { sed '/^'"$1"'/,/^'"$2"': /!d;/^'"$2"':/!d;s/'"$2"':[[:space:]]*//'| grep -o "^[.0-9+\-]\+" ; }
    --
    Bye, Lem

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Lem@21:1/5 to All on Tue Nov 5 13:40:02 2024
    Il giorno mar, 05/11/2024 alle 10.51 +0100, Leonardo Boselli ha scritto:
    certo, funziona perfettamente

    Sottopongo, solo accademicamente, una possibili alternative, che
    naturalmente sono molte (si potrebbe usare awk, eccetera).

    Qui dichiaro e poi uso una funzione, che chiamo "filtro", all'interno
    della quale lavorano sed e grep:

    | $ filtro () { sed '/^'$1'/,/^'$2': /!d;/^'$2':/!d;s/'$2':[[:space:]]*//'| grep -o "^[.0-9+\-]\+" ; }
    | $ sensors | filtro nvme-pci-0c00 Composite
    | +28.9

    Volendo salvare la funzione, si può farlo in un file come
    /home/$user/.bashrc (dove $user è l'utente che la utilizzerà).

    BTW: l'ho scritta di getto, senza controllare più di tanto: meglio
    pigliarla cum grano salis.
    --
    Bye, Lem

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Leonardo Boselli@21:1/5 to Lem on Tue Nov 5 17:20:01 2024
    This message is in MIME format. The first part should be readable text,
    while the remaining parts are likely unreadable without MIME-aware tools.

    carinissima ...
    On Tue, 5 Nov 2024, Lem wrote:
    Il giorno mar, 05/11/2024 alle 13.25 +0100, Lem ha scritto:
    BTW: l'ho scritta di getto, senza controllare più di tanto: meglio
    pigliarla cum grano salis.

    Ecco, appunto. Meglio aggiungere il quoting fra virgolette doppie ai parametri posizionali, per esempio:

    | $ filtro () { sed '/^'"$1"'/,/^'"$2"': /!d;/^'"$2"':/!d;s/'"$2"':[[:space:]]*//'| grep -o "^[.0-9+\-]\+" ; }
    --
    Bye, Lem



    --
    Leonardo Boselli
    Firenze, Toscana, Europa

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Paride Desimone@21:1/5 to All on Sat Nov 9 07:20:01 2024
    Il 5 novembre 2024 09:18:58 UTC, Leonardo Boselli <leo-stretch@trail.it> ha scritto:
    no ... ho fatto una prova e il problema è più sottile: nel primo messaggio ho tolto i > ma gli spazi erano ... NBSP ( U+00A0 ) e pare che bash non sia tanto tollerante.
    Anche diff, malgrado il -b li vedeva diversi, ma non lo faceva vedere [sul terminale con spaziatura fissa la rappresentazione di SP e NBSP è identica]

    Perdonatemi, ma cosa è NBSP ( U+00A0 )? E come li hai visti? Spesso mi imbatto in problemi simili ed ogni volta l'unica soluzione che trovo, è quella di cancellare gli spazi e rimetterli. Finché sono una decina di righe va pure bene ma quando di
    tratta di un centinaio, inizia a diventare un problema.

    /paride

    --
    Inviato dal mio dispositivo Android con K-9 Mail. Perdonate la brevità.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)