#MastoAiuto #bash

Ho uno script (una riga sola) che prende un file di testo in input, sostituisce una certa cosa con un'altra cosa (un bip nel gcode) e scrive il risultato nell'output, tipo

sed -E "s/M117 Printing.*Layer/\nM300 S440 P100\nM117 Layer/" < $1 > $2

Se volessi sostituire DUE cose diverse (in righe diverse) cosa mi conviene fare?

Mandare il primo output su un file temporaneo, usarlo come input per fare la seconda sostituzione, mandarla in output e cancellare il temporaneo?

@GustavinoBevilacqua io passerei ad un altro sed con un pipe, tipo

sed -E "s/una cosa/una Cosa/" < $1 | sed -E "s/due cose/due Cose/" > $2



credo che ci sia modo di fare tutto con un colpo solo di awk, ma è troppo sbattito ricordarsi come :D
@valhalla
> @GustavinoBevilacqua

> credo che ci sia modo di fare tutto con un colpo solo di awk, ma è troppo sbattito ricordarsi come :D

Io sostengo sempre l'opzione AWK! :))

Forse dovrebbe essere qualcosa del genere (se ho capito il problema):

----✀--------✀--------✀----
#!/usr/bin/env -S awk -f

/a/ { sub(/a/,"b"); print $0 }

/x/ { sub(/x/,"y"); print $0 }
----✀--------✀--------✀----

Ciao!
C.
Follow

@cage @GustavinoBevilacqua @valhalla
No, per favore. Almeno per le sostituzioni di testo niente awk.
Ogni volta che devo scrivere un programma awk impazzisco.

@rastinza
>
> @cage @GustavinoBevilacqua @valhalla
> No, per favore. Almeno per le sostituzioni di testo niente awk.
> Ogni volta che devo scrivere un programma awk impazzisco.

Beh, effettivamente dà il suo meglio quando devi riarrangiare l'input,
pero' non lo snobberei: la versione GNU puo' anche aprire i socket :)

https://www.gnu.org/software/gawk/manual/gawkinet/

Ciao!
C.
@cage @rastinza @GustavinoBevilacqua @valhalla

E' sempre il problema con il software GNU:

Non capiscono mai quando e' ora di fermarsi con le features.

E comunque:

ED IS THE STANDARD TEXT EDITOR.

@GustavinoBevilacqua
>
> @rastinza
>
> La sindrome del coltellino svizzero…

Un po' si'. :)

Ciao!
C.

@absc @cage @GustavinoBevilacqua @valhalla Siamo fortunati che non gli sia ancora venuto in mente di implementare emacs in awk.

@rastinza

>
> @GustavinoBevilacqua

> Siamo fortunati che non gli sia ancora venuto in mente di implementare emacs in awk.

Dici?

https://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/lisp/impl/awk/0.html

Da li si puo' iniziare a costruire :)

😃😃😃

Ciao!
C.
@AJFWuO50Cp7c1J4ybg.absc@clacson.abiscuola.org
> @rastinza @GustavinoBevilacqua
> E' sempre il problema con il software GNU:
>
>
> Non capiscono mai quando e' ora di fermarsi con le features.
>
>
> E comunque:
>
>
> ED IS THE STANDARD TEXT EDITOR.

E inoltre: there is only one true AWK :) :)

Ciao!
C.
Sign in to participate in the conversation
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.