|
|
(Una versione intermedia di uno stesso utente non è mostrata) |
Riga 1: |
Riga 1: |
− | Per ottenere la ''pulizia'' del Terminale da quanto è stato in esso stampato, si possono adottare almeno tre modalità.
| + | #REDIRECT [[Pulire_il_Terminale_o_la_console_via_codice]] |
− | | |
− | | |
− | ==Uso della sequenza di escape \e[2J==
| |
− | Si può fare uso della funzione ''Print'' o della funzione ''Write'' seguita dalla sequenza di escape \e[2J .
| |
− | | |
− | | |
− | Esempio:
| |
− | '''Public''' Sub Main()
| |
− |
| |
− | Print "Testo qualsiasi"
| |
− |
| |
− | Wait 1
| |
− |
| |
− | Print "Testo qualsiasi"
| |
− |
| |
− | Wait 1
| |
− |
| |
− | Write "<FONT Color=#B22222>\e[2J</font>"
| |
− |
| |
− | Print "Testo qualsiasi"
| |
− |
| |
− | '''End'''
| |
− | | |
− | | |
− | ==Uso di ''Shell'' e del comando ''clear''==
| |
− | Di norma, la pulizia del Terminale avviene con il comando "''clear''" (ma anche con ''Ctrl+l'' da tastiera). Pertanto, se si opera con un applicativo ''a riga di comando'', bisognerà inviare detto comando al Terminale.
| |
− | | |
− | Va segnalato che potrebbe essere necessario inviare preliminarmente la riga: ''export TERM=xterm'', al fine di evitare il problema "''TERM environment variable not set''". Infatti, per un corretto funzionamento è necessario conoscere l'esatto tipo del terminale su cui si sta lavorando. Andrebbe quindi settata la variabile ''TERM'' con la sintassi propria del sistema su cui si lavora.
| |
− | | |
− | | |
− | Mostriamo un esempio pratico:
| |
− | '''Public''' Sub Main()
| |
− |
| |
− | Dim i As Integer
| |
− |
| |
− | <FONT color=gray>' ''Va verificato se l'attivazione di questa riga è necessaria:''
| |
− | ' Shell "export TERM=xterm"</font>
| |
− |
| |
− | For i = 1 To 2
| |
− | Print "Testo qualsiasi"
| |
− | Wait 1
| |
− | Next
| |
− |
| |
− | Wait 1
| |
− |
| |
− | <FONT color=gray>' ''Puliamo il Terminale inviandogli il comando "clear":''</font>
| |
− | Shell "clear"
| |
− |
| |
− | Wait 0.01
| |
− | Print "Testo qualsiasi"
| |
− | Wait 2
| |
− |
| |
− | '''End'''
| |
− | | |
− | | |
− | ==Uso della funzione esterna ''system()'' e del comando ''clear''==
| |
− | Un'altra modalità prevede l'uso della funzione esterna ''system()'', contenuta nella libreria dinamica condivisa "''libc.so.6''", e del comando ''clear''. <SUP>[ [[#Note|Nota 1]] ]</sup>
| |
− | | |
− | | |
− | Esempio pratico:
| |
− | Library "libc:6"
| |
− |
| |
− | <FONT Color=gray>' ''int system (const char *__command)''
| |
− | ' ''Execute the given line as a shell command.''</font>
| |
− | Private Extern system_C(__command As String) As Integer Exec "system"
| |
− |
| |
− |
| |
− | '''Public''' Sub Main()
| |
− |
| |
− | Print "Testo qualsiasi"
| |
− |
| |
− | Sleep 2
| |
− |
| |
− | system_C("clear")
| |
− |
| |
− | '''End'''
| |
− | | |
− | | |
− | | |
− | =Note=
| |
− | [1] Qualcuno sconsiglia l'uso della funzione "''system( )''" per pulire il Terminale: https://forum.ubuntu-it.org/viewtopic.php?f=33&t=481589#p3772094
| |