 Si, sono un ingeniero informatico, da molti anni mi occupo di sviluppo web, anche se ultimamente non scrivo molto codice, sono entato nel mondo WordPress più o meno da 2010 e da quel momento non so più uscito e sono attivo su vari fronti nell'ambito del WordPress, appunto come sviluppatore di plug-in, ma anche come membro della community e tra l'altro approfitto dell'occasione anche per fare un po' di pubblicità al mitapo di Terrono che partirà proprio questo martedì, quindi se qualcuno è in zona ovviamente più che mi è venuto a partecipare. L'argomento di questo torco è appunto la command line, ma prima di arrivare a parlare diciamo di command line vorrei un attimo ripercorrere che è stata la storia dell'interazione tra l'uomo e la macchina, il Human Computer Interaction. Si tratta di una disciplina che inizialmente era sostanzialmente parte di quella che era l'informatica, ma nel corso degli anni ci sono ricevuto importanti contributi anche da altre discipline, soprattutto quelle delle scienze cognitive tipo la psicologia e nonché dal design, dall'economia eccetera. Quindi sostanzialmente oggi quando parliamo di interazione a l'uomo e la macchina è una materia che è multidisciplinare. Vediamo quindi un po' di storia. Se partiamo dalla pre-store informatica, quindi i primi calcolatori e addirittura calcolatori meccanici dell'Ottocento per poter interagire con essi si utilizzavano delle schede perforate, quindi dei cartoncini con dei buchi con cui potevamo inserire le istruzioni ai dati e la macchina ci rispondeva con altre schede perforate. Le schede perforate sono state utilizzate anche per i primi calcolatori elettronici, diciamo nella pre-store appunto informatica. Poi l'evoluzione ci ha portato a avere magari le prime calcolatrici programmabili con un tastierino numerico per inserire i dati e una stampa su un'asta di carta per leggere i risultati delle operazioni. Poi ovviamente sono arrivati i personal computer delle proprie. All'inizio l'interfaccia era un terminale quindi con una tastiera alfa numerica è un video e l'interazione era puramente testuale, quindi l'utente inseriva dei comandi di una tastiera e leggeva l'output a schermo. La vera rivoluzione c'è stata con l'introduzione dei sistemi operativi giotati di interfaccia grafica, quindi come Windows, Mac OS, etc. che con l'introduzione del paradigma cosiddetto WIMP, cioè l'uso di finestre, i cone, menu e puntatori ha permesso a molte più persone di utilizzare un computer senza avere comunque delle conoscenze di informatica progresse. Quindi questa è stata la rivoluzione che ha di fatto favorito un'enorme diffusione della tecnologia e dell'informatica. Un'altra rivoluzione è stata quella del web che ci ha permesso non solo di interagire con la macchina su cui mettiamo le mani, ma con altre macchine sparsi per il mondo grazie appunto all'internet. Ultere rivoluzione quella degli smartphone. In questo caso diciamo c'è stato un miglioramento, un cambio, ma miglioramento per il fatto che possiamo portarci in giro quello che è un computer senza dover ad esempio avere un mouse, grazie al fatto di avere un touchscreen con cui possiamo interagire con la macchina in modo ancora più intuitivo. Non finisce decisamente qui. Oggi è abbastanza comune usare dei comandi coccali sia con lo smartphone che con il computer, oppure con dispositivi fatti apposta per fare d'assistenti vocali. Ci sono altre applicazioni diciamo di queste magari un po' più futuribili che non hanno ancora una diffusione di massa anche se già da molti anni ci sono prodotti disponibili anche sul mercato consumer come la realtà virtuale ha rotamentata che vanno addirittura a oltre sempre l'ambito di interazione uomo macchina e diciamo questa carrellata perché l'ho voluta fare per far capire che diciamo il percorso che c'è stato in tutti questi decenni di sviluppo è stato quello di spostare sempre più l'asse diciamo della comunicazione verso l'umano a scapito tra i volete della macchina in senso. Le macchine sono diventate più intelligenti per riuscire a comunicare meglio con l'uomo quindi il risultato è stato che da parte dell'uomo l'utilizzo delle macchine è diventato più semplice, più intuitivo, più accessibile. Ma c'è un ma nel senso che non è sempre detto che un'interfaccia più evoluta, più moderna, più intuitiva sia anche necessariamente il modo più efficace per risolvere un problema. Ci sono degli amiti specifici e ovviamente questo è lo scopo del talk in cui usare un'interfaccia magari più datata come la linea di comando e permette di risolvere un problema in una maniera molto più efficiente. Qui trovate un po' di termini che probabilmente avrete visto in giro e c'è il pronto di comando, il riga di comando eccetera, la terminale, sono tutti termini anche se non sono probabilmente sinon amita tra loro che hanno in comune il riferimento al fatto di avere una interfaccia da linea di comando, quindi command line interface. Se andate a vedere su Wikipedia la definizione, la linea di comando semplicemente è un tipo di interazione che è caratterizzata dal fatto che l'utente scrive degli comandi testuali e riceve l'output sempre sotto forma di testo. A questo punto, magari uno si può chiedere, sì ma noi stiamo a un workout, stiamo parlando di WordPress, cosa c'entra tutto questo? Per rispondere ho voluto un po' scimiottare una pubblicità di qualche anno fa e quindi diciamo che ogni giorno uno sviluppatore di WordPress si sveglia e sa che utilizzando la linea di comando la sua vita sarà migliore perché potrà lavorare in maniera più efficiente e fin qui diciamo per chi sviluppa non c'è molto di nuovo. Al contempo però ogni giorno un amministratore di WordPress che magari non è un programmatore si sveglia e magari non sa che anche lui potrà avere un vantaggio dalla command line. Lo scopo del talk è proprio far capire che per fare un utilizzo base di questo tipo di strumenti non bisogna per forza essere dei programmatori. È chiaro che ci vuole un minimo di sforzo in più per poter iniziare però è fattibile. Quindi che voi siate programmatori o no usate la command line e in particolare WPKly o se la volete pronunciare all'inglese WP CLI che è un progetto relativamente recente nell'ambito WordPress che vi permette di interagire tramite linea di comando con un'installazione WordPress e potete fare molte operazioni. Per l'altro nel pomeriggio c'è proprio un altro talk di John Blackboard sull'argomento ovviamente più approfondito di questo che vi sto facendo io. Chi fosse interessato da approfondire è sicuramente un'occasione interessante. Andiamo avanti con qualche definizione Shell è sostanzialmente la parte di un sistema operativo che permette di inserire i comandi. A noi ovviamente interessa le Shell basate su linea di comando non tutte le Shell sono command line. In tutti diciamo i sistemi imperativi ovviamente possiamo accelerare la Shell. In Linux va da sé che chiunque usi Linux sa già cosa la Shell non ha bisogno che li dica nulla e su Mac abbiamo nativamente un'applicazione che è terminale per voi l'aprita e avete la Shell su con cui potete eseguire comandi. Su Windows il discorso è un po' più articolato perché abbiamo varie possibilità. Dal prompt dei comandi che è una sorta di eredità del vecchio MS-DOS la più recente PowerShell che invece è una Shell abbastanza potente che c'è su Windows e in tempi più recenti una cosa molto interessante che è stata introdotto da Windows è il Windows Subsystem for Linux che vi permette di avere una vera e propria macchina Linux diciamo o meglio la possibilità di eseguire i comandi Linux su una macchina Windows oppure ci sono altri pacchetti tipo Seguino, Mingv che anche quelli diciamo sono pacchetti installabili e vi forniscono una serie di utiliti tipicamente disponibili su Linux ma non su Linux. Questo perché quando parliamo di WordPress il suo ambiente diciamo tra rigolette naturale è Linux e anche se poi in realtà può gia completamente su Linux. Su Linux la Shell più famosa è quella che si chiama Bash che diciamo lo rappresento un po' lo standard del fatto delle Shell se non sono molte altre anche magari più avvolute però questa è quella che si prende in genere come riferimento oltre a essere una shell è anche un vero e proprio piccolo linguaggio di programmazione perché mette a disposizione funzioni strutture di controllo con cui potete fare degli script e quindi diciamo anche automatizzare alcuni processi eccetera e qui vi ho messo il link con un po' di documentazione anche e parliamo poi di second shell e ssh che sicuramente più o meno non si potete nominare ssh è un protocollo con cui potete aprire una connessione remota tra la macchina su cui state operando e una macchina remota quindi è sostanzialmente uno shell remota e con una connessione sicura per utilizzare ssh c'è un comando opposito quindi nella shell locale che avete visitate ssh e vi connettete a un nostro remoto oppure come ad esempio su windows potete utilizzare un'applicazione che funge solo da client ssh quindi non è una shell locale ma funge da client ssh più famoso e ultima ce ne sono anche altre anche da mobile è possibile usare ssh ci sono delle applicazioni apposite bastatevele installate e le potete usare a me è capitato più di una volta che magari ero in mobilità non avevo computer dietro dovevo fare un'operazione su un computer remoto da cellulare mi sono connesso via ssh ho lanciato dei comandi e qui vi ho messo alcune scorciatoie da tastiera non che siano molto importanti però magari se ho iniziato a usarlo potrebbe prevolpare utili soprattutto quella universalmente usate il tasto tab che funge d'auto completamento e quindi vi risparmo di digitare tanti caratteri perché vi auto completa quello che vedete fare i tasti frezza vi aiutano nel navigare tra i comandi che avete già inserito e così via non mi vuoi dilungare troppo perché il tempo è un po' di ranno come è fatto un comando allora voi quando avete davanti una shell tipicamente vi trovate il cosiddetto prompt cioè una stringa che vi indica lo stato corrente in cui siete che in genere comprende il nome dell'utente il nome del computer della macchina in cui siete è la cartella corrente a questo punto voi potete digitare il comando che è composto da varie parti il nome del comando stesso poi una serie di string che possono essere o delle opzioni che sono tipicamente precedute da un trattino o due trattini e poi una serie di argomenti ad esempio il nome di un file su cui quel comando deve agire e la command line ha la caratteristica di essere un po' criptica per il fatto che usa molti simboli e se uno non ne conosce il significato magari fa fatica leggere e anche i nomi dei comandi stessi spesso sono molto molto stringati e quindi diciamo non sono molto autoesplicativi qui ci vuole diciamo un attimo di tempo per ambientarsi ma una volta che diciamo si entra nell'ottica poi tutto è orientato a fare le cose nel più velocemente quindi ad esempio punto punto punto indicano la cartella corrente oppure la cartella padre la tilde indica la cartella home dell'utente la barra e la cartella radice il dollaro così com'è in php serve per accedere alle variabili la e commerciale messa la fine di un comando vi permette di lanciare lo stesso comando in background e così via del cancelletto per commentare e il problema che probabilmente molti neofiti della comand line hanno è quella che è la cosiddetta signora della pagina bianca o se volete in questo caso della schermata nera nel senso che uno si trova di fronte alla schermata nera e non sa che cosa deve scrivere però se uno ha già più o meno in mente il comando che gli serve e per questo diciamo c'è la documentazione il bello che direttamente dalla linea di comando potete vedere la documentazione di quel comando digitando il comando man che sta per manuale manual con il nome del comando che vi serve oppure comando con meno meno el che è l'opzione che vi fa venire fuori l'elfi linea questo è un esempio con il comando ls che tra poco vi spiego cosa fa nel caso non lo sappiamo un po di comandi sparsi per gestire i file che comunque sono sempre utili quindi qual è la cartella corrente come si fa andare un'altra cartella creare o rimuovere cartelle ls quello che vedeva un po fa semplicemente spara fuori l'elenico della cartella in cui siete o una cartella tentiva state come argomento ci sono dei comandi per rinominare per spostare per copiare per cancellare per cambiare i permessi per cambiare il proprietario per far delle ricerche all'interno di file o meglio non all'interno di file diciamo per cercare un file all'interno di una struttura di cartella più tra poco vi farò vedere anche qualche esempio e visto che lavoriamo in un ambito web capita anche spesso di dove a fare dei trasferimenti e remoti quindi da una macchina all'altra e quindi ci sono anche una serie di altri comandi per fare questo ad esempio vgette vi permette di scaricare via ttp o via ttp dei file scp un altro comando che vi fa la copia tramite ssh poi abbiamo dei client interattivi con cui potete interagire inserendo i comandi ttp e poi abbiamo async che è un comando molto potente che vi permette di fare delle synchronizzazioni di interi rami di cartella eccetera un concetto che è abbastanza importante quando si usa la comandante è quello delle dei canali di comunicazione che un comando ha a disposizione quando è in esecuzione si parla di standard input standard output e standard error che sono appunto i canali attraverso cui un comando opera normalmente lo standard input è la tastiera lo standard output è l'output che vedete al video lo standard error è un canale particolare che normalmente è sempre mandato sul video e che è usato per la comunicazione di errori durante le esecuzioni la cosa interessante che voi questi canali qua ci potete giocare facendo delle redirezioni quindi potete far sì che l'input o l'output anziché essere la tastiera o un file si scusate la tastiera o il video possono essere dei file quindi dei file di input dei file di output inoltre e questo usando minore maggiore oppure diciamo varie combinazioni un po più complicati oppure potete usare la pipe quindi quella stranghetta verticale che vi ho ritrovati sulla tastiera per accodare più comandi facendo in modo che l'output di un comando costituisca l'input di quello successivo qui vi ho messo qualche esempio il caso della pipe in caso tipico è l'uso del comando more che semplicemente fa la paginazione dell'output del comando precedente quindi nel caso il comando precedente vi spari fuori un output molto lungo con il comando more potete vederlo paginata per paginata detto questo vi volevo illustrare alcuni esempi applicati a warpress di utilizzo della command line prima esempio installazione in sito warpress cosa che immagino chiunque in questa stranza di fatto più e più volte l'approccio tradizionale che in genere un utente medio fa è andare su warpress.org scaricarsi il pacchetto zip scompattarlo poi magari caricare via ftp tutti i file sul server online e col problema che caricare i 2000 file di warpress di ftp soprattutto se avete una connessione non tanto veloce ci potrebbe volere parecchio tempo con la linea di comando potete accelerare questi tempi perché vi aprite una shell remota e andate nella cartella in cui volete installare warpress e lanciate uno script che avete magari creato in precedenza che vi fa alcuna operazione come può essere fatto questo script e ad esempio questo è un primo esempio diciamo non proprio ottimizzato perché poi io ne faccio vedere oriente ma migliore con il comando bucchetta andiamo a scaricare la versione che ci interessa in questo caso ho preso per italiana comando un zip la scompatta poi siccome il pacchetto contiene una cartella warpress con tutto i file dobbiamo spostare tutti i file nella cartella in cui siamo a quel punto facciamo un po di polizia però diciamo quello che abbiamo fatto fino a qui è stato semplicemente scaricare i file e piazzarli lì non abbiamo ancora installato warpress in questo caso poi l'installazione bisogna farla comunque via web prendo 2 rel tramite il browser e seguire la procedura di installazione standard di warpress il passo successivo che consente di accelerare ulteriormente è quello di usare wp-sli con lbb-sli ai potete fare tutte le precedenti operazioni totalmente vi asciegno totalmente inclusa anche l'installazione di warpress non dovete neppure aprire il browser alla fine della procedura vi trovate e warpress installato attivo con l'utente creato tutto pronto per funzionare e sono tre comandi con tre comandi voi avete risolto l'installazione di warpress il primo sostanzialmente file download wp core download volendo potete specificare anche qui se vi interessa una lingua particolare altrimenti l'utilizzo scaricola della sua inglese con il secondo andate a configurare il wp-config.php in questo caso si usa nel mio esempio ho messo l'opzione meno meno prompt che fa sì che l'esecuzione sia fatta in maniera interattiva cioè lo script vi chiede tutti i dati che servono per compilare il wp-config quindi chiede il nome del database, il username del database, la base del database e per resta fa tutto lui infine cioè wp-core install anche qui eseguiti in maniera interattiva che vi fa la vera e propria installazione di warpress da linea di comando vi chiede le stesse informazioni che vi chiede l'installazione via web quindi ad esempio il nome utente la passo del primo utente amministratore da creare il titolo del sito e diciamo quella informazione di base che vi chiede anche l'installazione fatta via web a quel punto lì è finito il sito è già installato e la cosa bella è che voi potete anche personare il zare il vostro script installazione perché magari avete che ne so alcuni plugin che installate sempre potete automatizzare anche con l'installazione di quindi aggiungere dei comandi che ad esempio installano alcuni plugin che voi usate sempre quindi poi vi ritrovate con un singolo comando e inserimento del minimo dispensabile dei dati avete risolto l'installazione warpress un altro esempio è quello della colonazione di un sito warpress magari avete già un sito operativo volete fare una copia per fare dei test normalmente un utente medico si farebbe si prende tutti i file di copia in un'altra cartella poi deve prendere il database e sportarlo fare un dump magari tramite più capini i majatmi importare lo stesso dump nell' nuovo database del sito di destinazione e a quel punto effettuare il search replace il search replace perché ovviamente i due siti avranno due rele differenti quindi dovrete andare a sostituire il rele originale con quello della copia qui attenzione perché molti cascano sul problema dei dati serializzati nel database di warpress ci sono alcune informazioni che vengono salvate con una codifica serializzata il che vuol dire che se voi fate un search replace grezzamente tipo ad esempio sul file se quelle rischiate di andare a corrompere il formato di questi dati quindi il risultato è che vi perdete dei lati quindi anche con un approccio tradizionale dovreste comunque porre attenzione a search replace ci sono dei tool appositi che sotto forma di plug-in o di script e quindi diciamo da non dimenticare questo aspetto se però invece la vogliamo fare usando la linea di comando in particolare da bps e lai anche qui abbiamo la vita in realtà di senso se noi ci creiamo uno script tipo questo che adesso vi illustro brevemente possiamo fare la copia alla fine una volta che lo scrive l'abbiamo creato visitando una singola riga di comando con un singolo comando si occupa di fare la copia dei file a copia del database e anche il search replace questo è un esempio giocattolo quindi funziona in realtà però non ho messo controlli sugli input eccetera però in realtà funziona quindi come funziona questo script molto brevemente andiamo nella cartella sorgente dollaro uno qua prima non l'ho detto e vuol dire accedere alla variabile che è il primo argomento con cui lo chiamiamo in questo caso il primo argomento bar stdc che è la cartella sorgente quindi ci spostiamo nella cartella lanciamo questo comando che come si può intunire leggendolo esport del database in un file dps quelle a questo punto con il comando cp facciamo una copia ricorsiglio il meno era sta per ricorsiglio quindi vuol dire che copiamo tutti i file dalla cartella sorgente alla destinazione a questo punto ci muoviamo nella cartella di destinazione andiamo a editare il groupi conflitt in questo caso questo comando in realtà lancia un editor di testo sempre l'interno della scel con cui potete mai aggiornare le credenziali di accesso al database perché ovviamente se state facendo una copia anche il database sarà separato a quel punto fate l'import in questo nuovo database e da notare che WPC Li riconosce in automatico a quale database volete accedere perché lo va a leggere dal vp config della cartella in cui siete a quel punto fate search replace in cui passate come argomenti il terzo e il quarto che sono l'indirizzo cattp sorgente e l'indirizzo cattp di destinazione e l'è finito poi qua giusto se volete fare cose pulite andate a cancellare rn star per remover i due file sequele perché a quel punto non servono più e il gioco è fatto migliorazione di un sito wordpress in realtà è un'operazione molto molto simile alla cura nazione con la differenza che quando si fa l'immigrazione in generale si intende il trasferimento tra due host che sono remoti e con un approccio tradizionale anche qui normalmente si passa da ftp quindi con i tempi del caso con un approccio alina di comando possiamo invece usare un di quei comandi che vi ho visto prima che vi ho mostrato prima come ad esempio rsync che fa un trasferimento server-to-server quindi non dovete scaricarvi locale per poi ricaricare fa un trasferimento server-to-server tra l'altro potete essendo un tool di synchronizzazione potete anche rilanciarlo più volte nel caso nel frattempo sia un intervenuto delle modifiche oppure magari se si è interrotto per qualche motivo la connessione se però non avete l'accesso ssh sul server da cui dovete tirare giudati cosa in realtà molto frequente perché non tutti i provider di hosting mettono a disposizione l'accesso ssh potete risolvere anche qui con un singolo comando potete scaricare via ftp sempre diciamo in maniera server-to-server un intero sito quindi con un singolo comando lui vi ti raggiù via ftp tutti i file del sito e per il resto la procedura è grossa modella stessa che abbiamo visto per la connazione un altro esempio è verificare la versione di warpress plug-in e temi uno scenario possibile è che abbiate un server magari di produzione con installate decine o anche a volte centinaia di siti warpress e a un certo punto vi viene la necessità di sapere qual è la versione di warpress presente in ciascuno di quei siti perché o di warpress o anche di un plug-in o di un tema perché magari è stata scoperta una vulnerabilità che riguarda una certa specifica versione di warpress o di un plug-in o di un tema e voi volete sapere se potete stare tranquilli oppure se dovete precipitare ad aggiornare quel plug-in o quel tema anche qui con un comando che è il comando find specificando diciamo un po' di argomenti adesso non entro troppo nel dettaglio qui però se qualcuno è interessato io lo posso spiegare anche in maniera molto più dettagliata con un singolo comando potete ottenere le l'elenco di tutte le installazioni di warpress che stanno in una certa parte del server e anche con guppy clip potete fare una cosa analoga c'è un comando analogo anche in WPC live stessa cosa per cercare un plug-in o un tema in questo caso e da WPC live non ha un equivalente però potete usare il comando find e in questo modo qua potete vedere nel vostro server nelle migliaia e le migliaia di file che avete avete magari una copia di bel plug-in installata da qualche parte stessa cosa per i temi cambia un po' la sintasi perché nel caso dobbiamo cercare dei file che fanno parte di plug-in nel caso dei temi ovviamente ci andremo a concentrare sul ad esempio se lo sta il css che è quello che contiene il numero di versione del tema l'altro esempio verifica d'integrità verifica d'integrità ci può tornare utile ad esempio quando un sito web è stato compromesso sotto violato da un hacker ad esempio se vogliamo essere sicuri che non siano rimasti dei resi dei residui di questa intrusione quindi magari del codice malevolo che chi ha violato il sito ha inserito all'interno dei file quello che dovremmo fare del momento è verificare file per file se è uguale al file originale che abbiamo scaricato in origine da wordpress.org cosa che ovviamente far la mano nessun umano potrebbe fare visito alle migliaia di file che abbiamo anche qui ci viene aiuto sempre WPC li che ha dei comandi che fanno la verifica del checksam cioè fanno un'analisi di tutti i file che avete nell'installazione locale di wordpress e li confrontano calcolando un checksam che sostanzialmente diciamo è una un codice che viene calcolato sulla base del contenuto del file è un codice univoco una sorta di asci diciamo e lo confronta con la versione originale che è presente su wordpress.org e li dice se ci sono stati dei file aggiunti o eventualmente modificati e in quel caso vi aiuto quindi ad individuare possibili recebili di un'intrusione e con WPC li originale potete fare questa cosa per il core e per i plugin al momento non ancora veritevi ma c'è una donna di terze parti che è WPC checksam che praticamente estende WPC li che riconoscete anche di eventualmente fare la stessa cosa sui tempi di verificare sei temi ovviamente questa cosa funziona solo su quelli del del repo di wordpress.org non per quelli commerciali ultimissima cosa che in realtà non ha una relazione stretta con wordpress ma che probabilmente a molti di voi è capitata l'amigrazione di una casera del vostro elettronito magari da un provider o un altro dove per migrazione intendo anche lo spostamento dei messaggi in un approccio tradizionale quello che un tente medio fa è aprire il suo cliente di posta e ma configurarsi i due account di sorgente quello sorgente e quello di destinazione e poi mettersi a copiare o spostare i file cartelle il problema è che questa procedura non è fidabilissima soprattutto se magari avete giga e giga di messaggi nel vostro archivie mail e quindi se qualcosa va storto magari mi tocca rilteare da cavo anche qui ci viene in aiuto un tool da liga di comando che si chiama imapsync che altro non fa che sincronizzare due caselle tramite uno quindi voi con un singolo comando qui dovete passare un po di parametre che sono i parametri di configurazione delle due caselle e le relative credenziali in semepasso con un singolo comando potete fare il trasferimento di tutti i messaggi ovviamente ci metterà il tempo che ci mette però arriva in fondo e non sbaglie e nel caso sbagliasse comunque essendo che comunque lui fa una sincronizzazione lo potete rilanciare più volte e lui continua da dove era rimasto e in imapsync poi in realtà in programma diciamo sul che ha moltissime opzioni ad esempio vi permette anche di fare la rimappatura delle cartelle cartelle di default tipo la posta indiata spam cestino nel caso in cui tra un sistema e l'altro abbiano dei nomi diversi ad esempio questo è un esempio che è una migliazione da gmail anche da una mail basata sul cipano a gmail in cui ci sono delle nomenclature diverse in quel modo lì passando i parametri giusti potete tenere conto che vi riesce niente io ho finito se ci sono