Re: [OT] Shell che accetta commenti multilinee

2023-09-22 Per discussione Piviul

On 9/15/23 17:31, Beppe Cantanna wrote:
Un accrocchio comodo per disabilitare intere parti di codice di uno 
script senza dover mettere il carattere # a inizio di ogni riga, trovo 
sia racchiuderlo fra parentesi facendo seguire la prima dal comando exit.


Esempio:
~$ cat ./test01.sh
#!/bin/bash

VAR=5

(exit
echo "Parte DISABILITATA"
echo "Parte DISABILITATA"
echo "Parte DISABILITATA"
echo "Parte DISABILITATA"
echo "Parte DISABILITATA"
VAR=10
echo "Parte che se non è DISABILITATA distrugge tutto"
sudo rm -fr /
)

echo "VAR: ${VAR}"
echo "Parte eseguita"

~$ ./test01.sh
VAR: 5
Parte eseguita


In pratica si crea una subshell nella quale si entra e si esce subito 
senza eseguire nulla di nulla.


Mi serve non tanto per spiegare cosa fa il codice ma solo per 
disabilitarlo o abilitarlo comodamente come quando racchiudiamo parte 
del listato fra i caratteri /* ... */.


Grazie Beppe, ne farò buon uso

Piviul


Re: [OT] Shell che accetta commenti multilinee

2023-09-17 Per discussione Beppe Cantanna
Ciao Davide,
il link che hai messo mi pare riporti più o meno gli stessi metodi del link
suggerito da Christian Surchi qualche mail fa (il thread effettivamente è
vecchiotto) dove viene mostrato l'uso del costrutto <
ha scritto:

> Beppe Cantanna ha scritto:
>
> > disabilitare intere parti di codice di uno script senza
> > dover mettere il carattere # a inizio di ogni riga
>
>
> https://stackoverflow.com/questions/43158140/way-to-create-multiline-comments-in-bash
>
> Ciao
> Davide
>
> --
> La mia privacy non è affar tuo
> https://noyb.eu/it
> - You do not have my permission to use this email to train an AI -
> If you use this to train your AI than you accept to distribute under AGPL
> license >= 3.0 all the model trained, all the source you have used to
> training your model and all the source of the program that use that model
>
>

-- 
*CANTANNA Giuseppe*
cel. +39 349 1998700
giuseppe.canta...@glugto.org
canta...@glugto.org
canta...@gmail.com

bproot.bc - Linux user n. 502620 registered on http://counter.li.org/
*Nodo NINUX: *broot*.*


*Per favore non inviatemi allegati in formato MS
Office.​​Utilizza​te​ alternativamente documenti in formato OpenDocument.*
​
http://en.wikipedia.org/wiki/OpenDocument

​ ​
http://it.wikipedia.org/wiki/OpenDocument


*​*http://www.documentfoundation.org/
* ​ *https://it.libreoffice.org/
​ ​


Re: [OT] Shell che accetta commenti multilinee

2023-09-17 Per discussione Davide Prina
Beppe Cantanna ha scritto:

> disabilitare intere parti di codice di uno script senza
> dover mettere il carattere # a inizio di ogni riga

https://stackoverflow.com/questions/43158140/way-to-create-multiline-comments-in-bash

Ciao
Davide

--
La mia privacy non è affar tuo
https://noyb.eu/it
- You do not have my permission to use this email to train an AI -
If you use this to train your AI than you accept to distribute under AGPL
license >= 3.0 all the model trained, all the source you have used to
training your model and all the source of the program that use that model



Re: [OT] Shell che accetta commenti multilinee

2023-09-15 Per discussione Beppe Cantanna
Un accrocchio comodo per disabilitare intere parti di codice di uno script
senza dover mettere il carattere # a inizio di ogni riga, trovo sia
racchiuderlo fra parentesi facendo seguire la prima dal comando exit.

Esempio:
~$ cat ./test01.sh
#!/bin/bash

VAR=5

(exit
echo "Parte DISABILITATA"
echo "Parte DISABILITATA"
echo "Parte DISABILITATA"
echo "Parte DISABILITATA"
echo "Parte DISABILITATA"
VAR=10
echo "Parte che se non è DISABILITATA distrugge tutto"
sudo rm -fr /
)

echo "VAR: ${VAR}"
echo "Parte eseguita"

~$ ./test01.sh
VAR: 5
Parte eseguita


In pratica si crea una subshell nella quale si entra e si esce subito senza
eseguire nulla di nulla.

Mi serve non tanto per spiegare cosa fa il codice ma solo per disabilitarlo
o abilitarlo comodamente come quando racchiudiamo parte del listato fra i
caratteri /* ... */.

Il giorno mar 9 ago 2022 alle ore 09:09 Alessandro Rubini 
ha scritto:

> >> Il primo accrocchio ("< >> [...] I commenti non devono avere effetti. Questo non e` un
> >> commento.
>
> > ma l'argomento sicurezza e`
> > un'esagerazione. [...] essere exploitabili [...]
>
> Mai parlato di sicurezza e di attacchi. E` pericoloso quando dici al
> programmatore che un costrutto e` un commento e invece non lo e` (si
> tratta di un costrutto che ha pochi effetti per motivi non spiegati
> dall'autore dell'articolo). Perche` nei commenti puoi scrivere di
> tutto, compreso codice.  Se io scrivo una cosa nel commento e questo
> ha effetti mi faccio del male. O lo faccio ai miei utenti.
>
> Piuttosto, se proprio si vuole scrivere roba con pochi effetti, meglio
> fare
>
>   echo 'non sono un commento ma potrei essere multi-riga' > /dev/null
>
> Almeno tutti conoscono il costrutto, rispetto a << o :. Eviterei
> comunque, ma spero di aver reso l'idea. E se non ci riesco amen.
>
> Buona giornata e buone ferie passate o future a tutti.
>
>

-- 
*CANTANNA Giuseppe*
cel. +39 349 1998700
giuseppe.canta...@glugto.org
canta...@glugto.org
canta...@gmail.com

bproot.bc - Linux user n. 502620 registered on http://counter.li.org/
*Nodo NINUX: *broot*.*


*Per favore non inviatemi allegati in formato MS
Office.​​Utilizza​te​ alternativamente documenti in formato OpenDocument.*
​
http://en.wikipedia.org/wiki/OpenDocument

​ ​
http://it.wikipedia.org/wiki/OpenDocument


*​*http://www.documentfoundation.org/
* ​ *https://it.libreoffice.org/
​ ​


Re: [OT] Shell che accetta commenti multilinee

2022-08-09 Per discussione Alessandro Rubini
>> Il primo accrocchio ("<> [...] I commenti non devono avere effetti. Questo non e` un
>> commento.

> ma l'argomento sicurezza e`
> un'esagerazione. [...] essere exploitabili [...]

Mai parlato di sicurezza e di attacchi. E` pericoloso quando dici al
programmatore che un costrutto e` un commento e invece non lo e` (si
tratta di un costrutto che ha pochi effetti per motivi non spiegati
dall'autore dell'articolo). Perche` nei commenti puoi scrivere di
tutto, compreso codice.  Se io scrivo una cosa nel commento e questo
ha effetti mi faccio del male. O lo faccio ai miei utenti.

Piuttosto, se proprio si vuole scrivere roba con pochi effetti, meglio
fare

  echo 'non sono un commento ma potrei essere multi-riga' > /dev/null

Almeno tutti conoscono il costrutto, rispetto a << o :. Eviterei
comunque, ma spero di aver reso l'idea. E se non ci riesco amen.

Buona giornata e buone ferie passate o future a tutti.



Re: [OT] Shell che accetta commenti multilinee

2022-08-06 Per discussione Teodoro Santoni
Il 30/07/22, Alessandro Rubini ha scritto:
>>> farebbe comodo avere una shell, compatibile con bash, che
>>> tramite qualche carattere particolare, accetta commenti su piu` righe.
>
> Non sarebbe compatibile con bash.  Gia` bash non e` compatibile con sh
> e non dovrebbe essere usata per gli script :)
>
> Non vedo dove stia il problema nel mettere un "#" ad ogni riga di
> commento.  Gli editor faranno vedere queste righe con il colore dei
> commenti (mentre con altri accrocchi non succede).  E, sempre gli editor,
> sono in grado di riallineare il paragrafo mantentendo i marcatori di
> commento al posto giusto.
>
>> Puoi farlo anche in bash. Per esempio:
>>
>> https://www.geeksforgeeks.org/multi-line-comment-in-shell-script/
>
> Il primo accrocchio ("<
>   all lines of the here-document are subjected to  parameter  ex-
>   pansion,  command substitution, and arithmetic expansion
>
> Quindi questo
>
>#!/bin/bash
>
><< commento
>  se facessi $(echo pio > /tmp/file) creerei un file
>commento
>
> Mi crea un file. I commenti non devono avere effetti. Questo non e` un
> commento.
>
> Il secondo accorcchio (": '") e` meno rischioso. "duepunti" e` il
> comando interno che non fa niente ("does nothing beyond expanding
> arguments and performing any specified redirections").  Quindi
> duepunti-spazio-apice apre un argomento che puo` essere di piu` righe,
> senza grossi rischi, a meno che non si infilino altri apici dentro il
> "commento" stesso.
>
> Rimane che non e` un commento, e chi guarda il codice (compresa la
> colorazione di sintassi degli editor) non lo percepisce come un
> commento.
>
> Mi spiace, ma quella pagina e` sbagliata, sia perche` da` consigli
> sbagliati sia (ed e` peggio) perche` non spiega cosa significano quei
> caratteri strani -- che non sono commenti.
>
> Se e` vero che il commento "helps in understanding the code, improves
> code-readability, and also helps in enhancing the structure of the
> program" quello che *non* bisogna fare e` seguire i consigli che
> seguono.

È vero che è un accrocchio, rompe gli editor e nel link non spiegano
niente (penso che neanche capiscano loro stessi che cosa servano certe
cose, chi sa fa chi non sa insegna), ma l'argomento sicurezza è
un'esagerazione. Intanto here-doc e true con argomenti sono
equivalenti sull'essere exploitabili tramite $(), ma ormai gli script
shell per gli usi di distribuzione non servono più, rimane solo il
linguaggio degli accrocchi che uno si fa per sè.
Un antico adagio diceva che UNIX non ti ferma dallo spararti nei
piedi, se è ciò che vuoi UNIX conficcherà il proiettile nel tuo piede
nella maniera più efficiente.



Re: [OT] Shell che accetta commenti multilinee

2022-08-06 Per discussione Teodoro Santoni
Il 31/07/22, Giancarlo Martini ha scritto:
> quando edito gli script in bash (o sh che sia) uso vim e quelli che conosco
> li trovo tediosi, rispetto al C.
> L'unico che che uso è esc :inizio,fines/^/# e similare per rimuoverli. Ma
> devo decidere a priori le line e se sono non contigue devo ripetere
> l'operazione. Ma sarò io fatto male ... :)

Mi ero aggiustato all'uopo con selezione visuale riga (V) e
successivamente :norm I# ma mi sta più simpatico l'here document vuoto
che non conoscevo.



Re: [OT] Shell che accetta commenti multilinee

2022-08-01 Per discussione gerlos



> Il giorno 31 lug 2022, alle ore 11:51, Giancarlo Martini 
>  ha scritto:
> 
> quando edito gli script in bash (o sh che sia) uso vim e quelli che conosco 
> li trovo tediosi, rispetto al C.
> L'unico che che uso è esc :inizio,fines/^/# e similare per rimuoverli. Ma 
> devo decidere a priori le line e se sono non contigue devo ripetere 
> l'operazione. Ma sarò io fatto male ... :)

Con vim puoi, più rapidamente, usare ^ per spostarti ad inizio riga e usare I 
(i maiuscola) seguito da # per commentare una singola linea o digitare x per 
decommentarla. 

Ed eventualmente puoi spostarti e ripetere l’azione con . (punto)

Per i blocchi di righe io uso di solito la selezione visuale: prima vado ad 
inizio riga con ^, poi uso Ctrl-V, sposto il cursore per marcare le righe da 
modificare, e poi uso I seguito da #  ed ESC per commentare o x per 
decommentare. 

Non mi sembra particolarmente tedioso, ma capisco che siano gusti. 

Ad ogni modo, magari ti puoi trovare meglio con il plugin commentary:
https://github.com/tpope/vim-commentary

happy coding! 
gerlos



Re: [OT] Shell che accetta commenti multilinee

2022-07-31 Per discussione Giancarlo Martini
quando edito gli script in bash (o sh che sia) uso vim e quelli che conosco
li trovo tediosi, rispetto al C.
L'unico che che uso è esc :inizio,fines/^/# e similare per rimuoverli. Ma
devo decidere a priori le line e se sono non contigue devo ripetere
l'operazione. Ma sarò io fatto male ... :)

Il giorno dom 31 lug 2022 alle ore 11:27 gerlos  ha
scritto:

>
>
> Il dom 31 lug 2022, 10:36 Giancarlo Martini  ha
> scritto:
>
>> Grazie Alessandro per la preziosa precisazione.
>> Per quanto riguarda l'uso che ne faccio io comunque si limita alla fase
>> di test, quando voglio fare delle prove su un pezzo di codice e non voglio
>> che un altro pezzo di codice interferisca.
>> Una volta che ho trovato la soluzione che ritengo opportuna per le mie
>> esigenze faccio operazione di pulizia ...
>>
>
> Scusa, ma non capisco il problema: ormai quasi tutti di editor "seri" ti
> permettono di commentare/decommentare più righe in blocco aggiungendo o
> togliendo # - penso a vim, Emacs, gedit, Kate, vscode...
>
> C'è qualche ragione per cui non vuoi usare gli automatismi del tuo editor
> di testo?
>
> Saluti
> Gerlos
>
>

-- 
Giancarlo Martini
(Replace 'AAA' con '@')
mailto:giancarlo.firAAAgmail.com 


Re: [OT] Shell che accetta commenti multilinee

2022-07-31 Per discussione gerlos
Il dom 31 lug 2022, 10:36 Giancarlo Martini  ha
scritto:

> Grazie Alessandro per la preziosa precisazione.
> Per quanto riguarda l'uso che ne faccio io comunque si limita alla fase di
> test, quando voglio fare delle prove su un pezzo di codice e non voglio che
> un altro pezzo di codice interferisca.
> Una volta che ho trovato la soluzione che ritengo opportuna per le mie
> esigenze faccio operazione di pulizia ...
>

Scusa, ma non capisco il problema: ormai quasi tutti di editor "seri" ti
permettono di commentare/decommentare più righe in blocco aggiungendo o
togliendo # - penso a vim, Emacs, gedit, Kate, vscode...

C'è qualche ragione per cui non vuoi usare gli automatismi del tuo editor
di testo?

Saluti
Gerlos


Re: [OT] Shell che accetta commenti multilinee

2022-07-31 Per discussione Giancarlo Martini
Grazie Alessandro per la preziosa precisazione.
Per quanto riguarda l'uso che ne faccio io comunque si limita alla fase di
test, quando voglio fare delle prove su un pezzo di codice e non voglio che
un altro pezzo di codice interferisca.
Una volta che ho trovato la soluzione che ritengo opportuna per le mie
esigenze faccio operazione di pulizia ...

Il giorno sab 30 lug 2022 alle ore 23:42 Alessandro Rubini 
ha scritto:

> >> farebbe comodo avere una shell, compatibile con bash, che
> >> tramite qualche carattere particolare, accetta commenti su piu` righe.
>
> Non sarebbe compatibile con bash.  Gia` bash non e` compatibile con sh
> e non dovrebbe essere usata per gli script :)
>
> Non vedo dove stia il problema nel mettere un "#" ad ogni riga di
> commento.  Gli editor faranno vedere queste righe con il colore dei
> commenti (mentre con altri accrocchi non succede).  E, sempre gli editor,
> sono in grado di riallineare il paragrafo mantentendo i marcatori di
> commento al posto giusto.
>
> > Puoi farlo anche in bash. Per esempio:
> >
> > https://www.geeksforgeeks.org/multi-line-comment-in-shell-script/
>
> Il primo accrocchio ("<
>   all lines of the here-document are subjected to  parameter  ex-
>   pansion,  command substitution, and arithmetic expansion
>
> Quindi questo
>
>#!/bin/bash
>
><< commento
>  se facessi $(echo pio > /tmp/file) creerei un file
>commento
>
> Mi crea un file. I commenti non devono avere effetti. Questo non e` un
> commento.
>
> Il secondo accorcchio (": '") e` meno rischioso. "duepunti" e` il
> comando interno che non fa niente ("does nothing beyond expanding
> arguments and performing any specified redirections").  Quindi
> duepunti-spazio-apice apre un argomento che puo` essere di piu` righe,
> senza grossi rischi, a meno che non si infilino altri apici dentro il
> "commento" stesso.
>
> Rimane che non e` un commento, e chi guarda il codice (compresa la
> colorazione di sintassi degli editor) non lo percepisce come un
> commento.
>
> Mi spiace, ma quella pagina e` sbagliata, sia perche` da` consigli
> sbagliati sia (ed e` peggio) perche` non spiega cosa significano quei
> caratteri strani -- che non sono commenti.
>
> Se e` vero che il commento "helps in understanding the code, improves
> code-readability, and also helps in enhancing the structure of the
> program" quello che *non* bisogna fare e` seguire i consigli che
> seguono.
>
> saluti
> /alessandro
>
>

-- 
Giancarlo Martini
(Replace 'AAA' con '@')
mailto:giancarlo.firAAAgmail.com 


Re: [OT] Shell che accetta commenti multilinee

2022-07-30 Per discussione Alessandro Rubini
>> farebbe comodo avere una shell, compatibile con bash, che
>> tramite qualche carattere particolare, accetta commenti su piu` righe.

Non sarebbe compatibile con bash.  Gia` bash non e` compatibile con sh
e non dovrebbe essere usata per gli script :)

Non vedo dove stia il problema nel mettere un "#" ad ogni riga di
commento.  Gli editor faranno vedere queste righe con il colore dei
commenti (mentre con altri accrocchi non succede).  E, sempre gli editor,
sono in grado di riallineare il paragrafo mantentendo i marcatori di
commento al posto giusto.

> Puoi farlo anche in bash. Per esempio:
> 
> https://www.geeksforgeeks.org/multi-line-comment-in-shell-script/

Il primo accrocchio ("< /tmp/file) creerei un file
   commento

Mi crea un file. I commenti non devono avere effetti. Questo non e` un
commento.

Il secondo accorcchio (": '") e` meno rischioso. "duepunti" e` il
comando interno che non fa niente ("does nothing beyond expanding
arguments and performing any specified redirections").  Quindi
duepunti-spazio-apice apre un argomento che puo` essere di piu` righe,
senza grossi rischi, a meno che non si infilino altri apici dentro il
"commento" stesso.

Rimane che non e` un commento, e chi guarda il codice (compresa la
colorazione di sintassi degli editor) non lo percepisce come un
commento.

Mi spiace, ma quella pagina e` sbagliata, sia perche` da` consigli
sbagliati sia (ed e` peggio) perche` non spiega cosa significano quei
caratteri strani -- che non sono commenti.

Se e` vero che il commento "helps in understanding the code, improves
code-readability, and also helps in enhancing the structure of the
program" quello che *non* bisogna fare e` seguire i consigli che
seguono.

saluti
/alessandro



Re: [OT] Shell che accetta commenti multilinee

2022-07-28 Per discussione Giancarlo Martini
smack

PS
Non mi fraintendere :)

Il giorno gio 28 lug 2022 alle ore 14:41 Christian Surchi <
christ...@firenze.linux.it> ha scritto:

> Il 28/07/2022 14:19 Giancarlo Martini ha scritto:
> > Quando faccio script mi capita di dover commentare più di una riga,
> > farebbe comodo avere una shell, compatibile con bash, che
> > tramite qualche carattere particolare, accetta commenti su più righe.
> > Come i caratteri
> > /*
> >
> > */
> > per il C e C++.
> > Siete a conoscenza di qualcosa di simile?
> > Un caldo saluto :)
>
> Puoi farlo anche in bash. Per esempio:
>
> https://www.geeksforgeeks.org/multi-line-comment-in-shell-script/
>
> ciao
> Christian
>
>

-- 
Giancarlo Martini
(Replace 'AAA' con '@')
mailto:giancarlo.firAAAgmail.com 


Re: [OT] Shell che accetta commenti multilinee

2022-07-28 Per discussione Christian Surchi

Il 28/07/2022 14:19 Giancarlo Martini ha scritto:

Quando faccio script mi capita di dover commentare più di una riga,
farebbe comodo avere una shell, compatibile con bash, che
tramite qualche carattere particolare, accetta commenti su più righe.
Come i caratteri
/*

*/
per il C e C++.
Siete a conoscenza di qualcosa di simile?
Un caldo saluto :)


Puoi farlo anche in bash. Per esempio:

https://www.geeksforgeeks.org/multi-line-comment-in-shell-script/

ciao
Christian



[OT] Shell che accetta commenti multilinee

2022-07-28 Per discussione Giancarlo Martini
Quando faccio script mi capita di dover commentare più di una riga, farebbe
comodo avere una shell, compatibile con bash, che
tramite qualche carattere particolare, accetta commenti su più righe.
Come i caratteri
/*


*/
per il C e C++.
Siete a conoscenza di qualcosa di simile?
Un caldo saluto :)

-- 
Giancarlo Martini
(Replace 'AAA' con '@')
mailto:giancarlomartiniAAAgmail.com