regexp e pacchetti slackware - aiutatemi vi prego!!! :)

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Avatar utente
danix
Staff
Staff
Messaggi: 3289
Iscritto il: ven 27 ott 2006, 19:32
Nome Cognome: Danilo M.
Slackware: 64 current
Kernel: 6.12.13 x86_64
Desktop: i3
Località: Verona (VR)
Contatta:

Re: regexp e pacchetti slackware - aiutatemi vi prego!!! :)

Messaggio da danix »

spina ha scritto:Senti, ma se non ho capito male, tutto il tuo script si può riassumere con:

Codice: Seleziona tutto

sed  -n /$program/I'{s;.*/\(.*\)\(-[^-]\+\)\{3\}\.tgz$;\1;p}' $filelist
?

Spina
Una parte si... :evil: grrrrrrr
Certo se io avessi dovuto creare una RE del genere
  • 1. ci avrei messo 12 anni
    2. non starei rosicando in questo momento :lol:
grazie spina per avermi dimostrato quanto poco so dello scripting bash :D :thumbright:
sixjan ha scritto:Per continuare col tuning della morte :-), togliamo un altro grep:

Codice: Seleziona tutto

grep -i $1.*".tgz$" FILELIST.TXT | cut -d" " -f8
più tuning dell'unico sed che ha postato spina non credo si possa fare... :D
danix
danix ha scritto:non sono molto presente sul forum, e di ciò mi scuso con tutti

sixjan
Linux 2.x
Linux 2.x
Messaggi: 413
Iscritto il: dom 6 gen 2008, 11:46
Slackware: 14.1
Kernel: 3.10.17-smp
Desktop: Xfce 4.10

Re: regexp e pacchetti slackware - aiutatemi vi prego!!! :)

Messaggio da sixjan »

danix85 ha scritto:
spina ha scritto:Senti, ma se non ho capito male, tutto il tuo script si può riassumere con:

Codice: Seleziona tutto

sed  -n /$program/I'{s;.*/\(.*\)\(-[^-]\+\)\{3\}\.tgz$;\1;p}' $filelist
?

Spina
Una parte si... :evil: grrrrrrr
Certo se io avessi dovuto creare una RE del genere
  • 1. ci avrei messo 12 anni
    2. non starei rosicando in questo momento :lol:
grazie spina per avermi dimostrato quanto poco so dello scripting bash :D :thumbright:
sixjan ha scritto:Per continuare col tuning della morte :-), togliamo un altro grep:

Codice: Seleziona tutto

grep -i $1.*".tgz$" FILELIST.TXT | cut -d" " -f8
più tuning dell'unico sed che ha postato spina non credo si possa fare... :D
Sì, formidabile spina. Io sed non so usarlo. Però, come dicevo, GNU/linux fa divertire anche quelli meno preparati :-) ciao a tutti

Avatar utente
targzeta
Iper Master
Iper Master
Messaggi: 6643
Iscritto il: gio 3 nov 2005, 14:05
Nome Cognome: Emanuele Tomasi
Slackware: 64-current
Kernel: latest stable
Desktop: IceWM
Località: Carpignano Sal. (LE) <-> Pisa

Re: regexp e pacchetti slackware - aiutatemi vi prego!!! :)

Messaggio da targzeta »

Preciso solo che il cut con -f8 funziona male perchè il mio cut (versione 6.7 della Slamd64) evidentemente non considera più spazi consecutivi come un unica entità, ma come entità separate. Per dirla con le parole di Mario Vanoni:"non è portabile" :). In effetti in questi casi io suggerirei sempre di usare una pipe anche con 'tr' e l'opzione '-s' per eliminare tutti i caratteri ripetuti (non è la prima volta che vedo script fallire per questo motivo).....ovviamente va verificato se poi è effettivamente quello che si vuole fare :).

Spina
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama

Avatar utente
danix
Staff
Staff
Messaggi: 3289
Iscritto il: ven 27 ott 2006, 19:32
Nome Cognome: Danilo M.
Slackware: 64 current
Kernel: 6.12.13 x86_64
Desktop: i3
Località: Verona (VR)
Contatta:

Re: regexp e pacchetti slackware - aiutatemi vi prego!!! :)

Messaggio da danix »

spina ha scritto:Preciso solo che il cut con -f8 funziona male perchè il mio cut (versione 6.7 della Slamd64) evidentemente non considera più spazi consecutivi come un unica entità, ma come entità separate. Per dirla con le parole di Mario Vanoni:"non è portabile" :). In effetti in questi casi io suggerirei sempre di usare una pipe anche con 'tr' e l'opzione '-s' per eliminare tutti i caratteri ripetuti (non è la prima volta che vedo script fallire per questo motivo).....ovviamente va verificato se poi è effettivamente quello che si vuole fare :).

Spina
e se invece di quel cut ci metti

Codice: Seleziona tutto

awk '{print $8}'
la situazione migliora?? :D

Grazie dell'aiuto...
danix
danix ha scritto:non sono molto presente sul forum, e di ciò mi scuso con tutti

Rispondi