Repository 32bit  Forum
Repository 64bit  Wiki

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.

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

Messaggioda danix » sab mag 24, 2008 17:17

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
Avatar utente
danix
Staff
Staff
 
Messaggi: 3280
Iscritto il: ven ott 27, 2006 18:32
Località: Siderno (RC)
Nome Cognome: Danilo M.
Slackware: 64 14.0
Kernel: 3.2.29
Desktop: fluxbox

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

Messaggioda sixjan » sab mag 24, 2008 17:21

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
sixjan
Linux 2.4
Linux 2.4
 
Messaggi: 407
Iscritto il: dom gen 06, 2008 11:46
Slackware: 14.1
Kernel: 3.10.17-smp
Desktop: Xfce 4.10

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

Messaggioda targzeta » sab mag 24, 2008 17:25

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
Linux Registered User #454438
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
20/04/2013 - Io volevo Rodotà
Avatar utente
targzeta
Iper Master
Iper Master
 
Messaggi: 6156
Iscritto il: gio nov 03, 2005 14:05
Località: Carpignano Sal. (LE) <-> Pisa
Nome Cognome: Emanuele Tomasi
Slackware: current
Kernel: latest stable
Desktop: IceWM

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

Messaggioda danix » sab mag 24, 2008 17:38

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...
Avatar utente
danix
Staff
Staff
 
Messaggi: 3280
Iscritto il: ven ott 27, 2006 18:32
Località: Siderno (RC)
Nome Cognome: Danilo M.
Slackware: 64 14.0
Kernel: 3.2.29
Desktop: fluxbox

Precedente

Torna a Programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite