[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Sed: Una e una solo!




----- Original Message ----- From: "MaX" <maxlinux2000@gmail.com>
To: "Piviul" <piviul@riminilug.it>
Cc: <debian-italian@lists.debian.org>
Sent: Monday, June 09, 2014 5:13 PM
Subject: Re: Sed: Una e una solo!


Dimenticavo.... visto che sei alle prese con un database

il cut -d ' ' funziona se il campo divisorio è uno spazio a,trimenti
sostiuiscilo con un altro.
Purtroppo (a quanto ne so) cut funziona solo con 1 carattere divisorio
e quiondi se tu avessi come caratteri divisori qualche cosa tipo  ","
oppure ";" potrai usare solo la virgola o il punto e virgola

Se devi per qualche motivo cambiare un carattere per un altro, puoi usare tr

echo "DDDDD KKKKK AAAAA BBBBB"  | tr ' ' ','

per cancellarlo
echo "DDDDD KKKKK AAAAA BBBBB"  | tr -d ' '

per cambiare uno dei caratteri separatori che peró compare anche nei
campi del database tipo questo esempio: "DDD; DD";"KK
;KKK";"AAAAA";"BBBBB"

$echo "\"DDD; DD\";\"KK ;KKK\";\"AAAAA\";\"BBBBB\""   | sed 's|";"|"@"|g'
"DDD; DD"@"KK ;KKK"@"AAAAA"@"BBBBB"

eliminare solo i caratteri "a" e "z" minuscoli
echo "\"DDDDD\";\"KKKKK\";\"AAAAA 1 aaaaabbbbzzzz 2 ZZZZ\";\"BBBBB\""
 | sed 's|[az]*||g'
"DDDDD";"KKKKK";"AAAAA 1 bbbb 2 ZZZZ";"BBBBB"

Oppure togliere solo i numeri ma non il testo:
$ echo "\"DDDDD\";\"KKKKK\";\"AAAAA 1 aaaaabbbbzzzz 2
ZZZZ\";\"BBBBB\""    | sed 's|[0-9]*||g'

questi esempi li puoi mischiare con gli altri ottimi su sed, che ti
hanno suggerito gli altri membre della ML.

ciao
MaX


Ok, ti ringràzio!

Ciao


Il 09/06/14, MaX<maxlinux2000@gmail.com> ha scritto:
$ echo "DDDDD KKKKK AAAAA BBBBB"  | cut -d ' ' -f 3
AAAAA
$
$ echo "DDDDD KKKKK AAAAA BBBBB"  | cut -d ' ' -f 4
BBBBB
$


Il 09/06/14, Piviul<piviul@riminilug.it> ha scritto:
antispammbox-debian scrisse in data 09/06/2014 15:39:



Salve a tuti

Hò una linea composta più a dx da:


DDDDD   KKKKK   AAAAA    BBBBB

devo, a seconda dei casi, acquisire solo:
AAAAA
oppure
BBBBB

Chi mi dà suggerimenti?
echo DDDDD   KKKKK   AAAAA    BBBBB | sed -n
's/[^[:space:]]\+[[:space:]]*[^[:space:]]\+[[:space:]]*\([^[:space:]]\+\)[[:space:]]*\([^[:space:]]\+\)[[:space:]]*$/\1

\2/p'

dove \1 e \2 rappresentano appunto il 3°/4° campo cercato

Piviul


--
Per REVOCARE l'iscrizione alla lista, inviare un email a
debian-italian-REQUEST@lists.debian.org con oggetto "unsubscribe". Per
problemi inviare un email in INGLESE a listmaster@lists.debian.org

To UNSUBSCRIBE, email to debian-italian-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact
listmaster@lists.debian.org
Archive: [🔎] 5395BE60.6080103@riminilug.it">https://lists.debian.org/[🔎] 5395BE60.6080103@riminilug.it




--
ciao,
MaX



--
ciao,
MaX


--
Per REVOCARE l'iscrizione alla lista, inviare un email a
debian-italian-REQUEST@lists.debian.org con oggetto "unsubscribe". Per
problemi inviare un email in INGLESE a listmaster@lists.debian.org

To UNSUBSCRIBE, email to debian-italian-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org Archive: [🔎] CAEyAVmtExxnqgf8RvSTmqo4XacsyWeMWScxxhEBZziBiEiHc_A@mail.gmail.com">https://lists.debian.org/[🔎] CAEyAVmtExxnqgf8RvSTmqo4XacsyWeMWScxxhEBZziBiEiHc_A@mail.gmail.com


Reply to: