Dopo che il cmdlet Send-MailMessage è diventato obsoleto, perché non garantiva più una comunicazione sicura con i server di posta, stavo cercando un modo, semplice, per inviare una email utilizzando PowerShell, finalmente ho trovato PoshMailKit di poshcodebear disponibile su GitHub. Nel titolo dell’articolo ho scritto “Gmail (e non solo)” perché lo script si dovrebbe (non posso garantirlo) poter adattare a qualsiasi server di posta SMTP di cui abbiate utenza, password e conosciate la porta utilizzata dal server SMTP. Con Libero e Gmail, quelli che avevo per provare, l’invio della posta ha funzionato.
NoPanic - un pulsante di emergenza (con PowerShell)
| |Alcuni macchinari hanno un "bottone di sicurezza", da premere in caso di emergenza e anche "mister Burns" ne ha uno, quindi perché non dovrebbe avere qualcosa di simile anche il nostro sistema operativo? Ad esempio un "panic button", per automatizzare alcune operazioni difensive che possono essere utili se crediamo che improvvisamente un malware stia compromettendo il nostro computer.
Come integrare Gemini (chatbot AI) in PowerShell
In passato abbiamo visto come creare comandi personalizzati e come proteggere il terminale con una password, stavolta metteremo mano a PowerShell per integrare nel suo terminale Gemini, il chatbot di intelligenza artificiale di Google.
Utilizzare Powershell per pulire dai file inutili la cartella Temp, e non solo, di tutti gli utenti presenti in un computer
| |Al lavoro, presso una sede del cliente, lo stesso computer viene utilizzato da decine di persone, capita così molto spesso che i dischi fissi di questi computer siano completamente pieni e non ci sia neanche lo spazio per caricarci neanche un file di testo di pochi Kb. Questo accade perché Windows, durante il suo normale funzionamento scrive dei file temporanei, dei file di log, lascia dei resti di installazione dei programmi e tanto altro nella cartella Temp, e non solo, all’interno del proprio account di Windows. Se moltiplicate lo spazio inutilmente occupato per un numero indefinito di account si capisce perché, a un certo punto, il disco fisso si riempia completamente.
Come aggiungere un account locale al computer tramite PowerShell
| |Al lavoro mi trovo a dover aggiungere un account locale amministratore in ogni computer, di una società che è stata acquisita, che ne risulta privo. Farlo manualmente diventa lungo e complesso, ripeterlo decine di volte diventa pesante, così ricorro a uno script PowerShell e al cmdlet New-LocalUser.
Reindirizzare l’output di un comando verso un file di testo con PowerShell e il cmdlet Out-File
| |L’output di un comando che noi, o il sistema operativo, eseguiamo nel computer è il risultato generato da questi processi, può essere inviato a video, oppure stampato, per esempio, ci sono però alcuni comandi che mandano lunghe stringhe di dati sul monitor che, se devono essere consultati, diventa difficile leggerli tutti. Con PowerShell e il cmdlet Out-File possiamo reindirizzare l’output di questi comandi verso un file di testo da consultare in seguito o memorizzarlo per conservarlo.
Come avviare i processi con Start-Process e PowerShell
| |Sono sempre alla ricerca di comandi e modi alternativi per fare certe operazioni durante il mio lavoro di assistenza remota, in questo articolo vado a utilizzare PowerShell per avviare i processi del sistema operativo, come aprire una cartella o un determinato file con il programma associato. Una difficoltà nel mio lavoro di supporto è quando non riesco a collegarmi al computer remoto, per qualsiasi motivo, e dall’altra parte del telefono trovo un utente molto poco pratico, per cui cercare un file, o un programma, nel computer o lanciare un qualsiasi comando è impossibile. Vediamo come usare il cmdlet Start-Process di PowerShell.
Come spegnere e riavviare un computer con PowerShell e inviare un avviso all’utente
| |Spegnere e riavviare un computer, queste due semplici, in apparenza, operazioni rappresentano, in alcuni casi, la migliore soluzione per determinati problemi del computer, solo che certe persone non lo sanno fare in particolare il riavvio perché quando gli chiedo di farlo, in genere lo spengono e lo riaccendono. Ci sono poi quelli che, per motivi noti forse solo a loro, non li spengono mai, così gli aggiornamenti non si installano, le nuove policy aziendali non vengono recepite e gli eventuali problemi presenti non vengono spazzati via da uno spegni e riaccendi.
Come inviare un messaggio a un computer/utente utilizzando PowerShell
, | |Quando al lavoro fornisco supporto remoto agli utenti, una cosa spesso complicata è mettermi in contatto con le persone. Se li chiami al telefono vedono un numero per loro strano e non rispondono, oppure hanno qualche app che blocca le chiamate, i messaggi via chat vengono ignorati, così mi capita di utilizzare uno script PowerShell per inviare, grazie a Ninja, un popup sullo schermo dell’utente “ricercato”. Devo dire che alcuni utenti, nonostante io nel messaggio indicassi chiaramente chi ero e cosa volevo, si sono allarmati e hanno chiesto spiegazioni ai loro superiori o ai miei colleghi di sede.
Come gestire le operazioni pianificate di Windows tramite PowerShell
| |Le operazioni pianificate, o scheduled task, sono utilizzate da Windows per eseguire periodicamente determinate operazioni, come l’aggiornamento di un browser, delle definizioni dell’antivirus, un backup dei file e tanto altro, in determinati orari o giorni della settimana. Anche se Windows ha una sua interfaccia, l’utilità di pianificazione, per gestire queste attività in questo articolo vedremo come fare tutto tramite PowerShell.
Come estrarre l’hash di un file con PowerShell
| |L’hash di un file è la sua impronta digitale, costituita in questo caso da una lunga serie di numeri e lettere, che identifica in modo univoco un file e certifica la sua integrità quando è appena stato scaricato da Internet, per esempio il file ISO di Windows 11 presente nel sito Microsoft, ma l’hash vale anche per qualsiasi eseguibile che installi un gioco o un programma nel computer. Se questa stringa non corrisponde al file appena scaricato, ci possono essere stati dei problemi durante il download che hanno danneggiato l’ISO, se il file eseguibile proviene da fonti non affidabili può essere stato alterato per nasconderci dentro un malware.
WrapperShell: crea script PowerShell cifrati e con autodistruzione, per visualizzare immagini, testo ed eseguire comandi
| |Ci sono certamente molti modi e molte applicazioni per visualizzare, archiviare e proteggere con password immagini e testi; se tuttavia volete farlo senza installare ulteriori programmi e ottenendo un file che non dia troppo nell'occhio, perché si presenta come uno "scostante" script PowerShell (che solitamente non contengono immagini e non sono protetti da password), potete usare WrapperShell, scaricabile da questo repository su GitHub (la versione in italiano è "WrapperShell-ita.ps1")..
Come svuotare il cestino con PowerShell
| |Il cestino di Windows è una cartella nascosta, presente in ogni hard disk del computer, che contiene, temporaneamente, almeno sino a quando non lo svuotiamo, i file che abbiamo cancellato dal sistema operativo. Questi file cancellati, che possiamo ripristinare in caso di necessità , occupano uno spazio predefinito nel nostro hard disk e per recuperarlo dobbiamo svuotare il cestino o utilizzare la pulizia disco di Windows.
Come eliminare un gruppo di cartelle quando non si hanno i permessi per farlo
| |Non guardo quasi mai nel cestino di Windows e non mi ero accorto che in quello del disco D era presente una cartella nascosta, di oltre 10 GB, contente numerosi file e cartelle, che non potevo cancellare in nessun modo perché non ne ero il proprietario. Dopo vari tentativi ero riuscito a diventare proprietario solo della cartella principale, ma non riuscivo a far ereditare i permessi alle altre cartelle che vi erano contenute. Rifare l’operazione per ogni singola cartella era impensabile.
Come cercare parole in file audio o video con Clipchamp e SRTpage
| |Può capitare di voler trovare, in un file video o audio, il momento in cui una certa parola o frase viene detta, che si tratti di una videolezione o un film o una registrazione personale o il testo di una canzone. Per farlo esistono programmi che estraggono l'audio dal filmato (se si tratta di un video), lo associano come trascrizione testuale al video (o al file audio) e consentono una ricerca per parola o frase. Una applicazione gratuita e in italiano che consente di farlo in modo semplice ed efficace è Clipchamp.
Aggiungere e rimuovere una stampante Kyocera con PowerShell
| |Al lavoro, a seguito del trasloco di sede del cliente, mi sono trovato nella necessità di installare velocemente la nuova stampante di rete e di eliminare quelle vecchie che non erano più presenti. Per mia fortuna si trattava in tutti e due i casi di stampanti Kyocera perché la procedura utilizzata si adatta bene ai modelli di questa marca e, teoricamente, anche a quelli di altri produttori, ma ho riscontrato delle differenze nei driver forniti che non mi hanno permesso di provare e capire se potesse adattarsi in qualche modo. Se avete modelli di altre marche non vi resta che provare e vedere se trovate dei driver più adatti allo scopo di quelli che ho provato io.
Come installare dei linguaggi aggiuntivi a Windows utilizzando PowerShell
| |Abbiamo visto in questo articolo come aggiungere delle altre lingue al sistema operativo per cambiarne l’interfaccia e tradurla in una lingua che ci serve per lavoro o studio. Vediamo ora come fare la stessa operazione tramite PowerShell.
Come estrarre informazioni dal Visualizzatore Eventi di Windows con PowerShell
| |Il visualizzatore eventi, questo “misterioso”, per molti, raccoglitore di informazioni di tutto quello che accade nel sistema operativo, dalle installazioni dei programmi, agli errori con relative schermate blu di Windows. Leggere e capirne il contenuto non è semplice, anche perché il Visualizzatore Eventi non è che offra delle grandi possibilità (comode) di salvataggio dei dati presenti. PowerShell può darci una mano per estrarre dei dati più specifici.
GuardShell: proteggere i programmi con password e passfile
In Windows, non è sempre facile o attuabile l'impostazione dei giusti permessi di accesso ai programmi, differenziando in modo granulare quali applicazioni condividere e di quali limitare l'utilizzo, soprattutto se tali programmi non prevedono autenticazione all'avvio o se si condivide l'account con altre persone o se si tratta di programmi non ancora installati. Altre volte si potrebbe voler impedire a processi noti (non di sistema) di partire in automatico in background, senza che l'utente possa intervenire. In tutti questi casi, per impostare dei blocchi che richiedano autenticazione, senza addentrarsi nella gestione dei permessi di Windows, senza bisogno di essere admin e senza ricorrere a programmi di terze parti, è possibile usare GuardShell (disponibile anche in versione italiana).
Come verificare l’hash dell’immagine ISO di Windows 11 con PowerShell
| |Quando andiamo a scaricare l’immagine ISO di Windows 11 dalla pagina dei download Microsoft, oppure la troviamo da altre fonti, una verifica che possiamo fare per controllare che sia originale e non sia stata danneggiata durante il download o alterata per qualsiasi motivo, compreso l’inserimento di un malware, è di controllare il suo hash con PowerShell.
CanaryShell: monitora e blocca azioni indesiderate nelle cartelle
Con la tipologia "file canarino" (canary) si intendono file dal contenuto irrilevante che vengono usati come "sentinelle" per monitorare eventi all'interno di una cartella: la loro cifratura da parte di un ransomware, l'esfiltrazione durante un attacco hacker, la rimozione dolosa o accidentale, innescheranno un allarme che avviserĂ l'utente (o l'amministratore di rete) che qualcosa di sospetto sta accadendo in quella cartella. Si possono anche impostare misure difensive che attivano una reazione automatica in base al tipo di allarme, senza richiedere l'intervento dell'operatore.
CoverShell: un'interfaccia grafica di PowerShell con strumenti e utilitĂ
| |Il principale limite della linea di comando (CLI) è quello di avere una usabilità piuttosto limitata per l'utente medio, che non sempre è in grado di interagire con gli script e il terminale. Per ovviare a tale limite, senza rinunciare alle enormi potenzialità della CLI, è possibile, usando Windows Forms, creare delle GUI (interfacce grafiche) con pulsanti, menu, caselle di testo, etc. che agevolano la fruizione di script in PowerShell preimpostati, sempre modificabili e ulteriormente espandibili.
Come convertire i documenti Office in PDF con PowerShell
| |Ogni giorno vi trovate a dover convertire decine di documenti Office in file PDF per poterli poi archiviare, o spedire via mail ai clienti, va bene che ci sono le stampanti virtuali che creano i PDF, però quanto tempo perdete ad aprire il singolo file di Office, inviarlo in stampa e convertirlo in PDF, oppure salvarlo in formato PDF se avete delle versioni recenti della suite di programmi per l’ufficio. Utilizzando un paio di script PowerShell è possibile convertire, in una sola volta, gruppi di file Office in formato PDF attendendo solo qualche momento a seconda del numero di file presenti.
Come creare dei QR code con PowerShell
| |Ormai viviamo circondati dai QR code, che altro non sono che delle piccole immagini che possono contenere dati e informazioni di vario tipo, come la password del nostro Wi-fi di casa che non vogliamo comunicare ai nostri ospiti, informazioni sull’azienda o un link Web da raggiungere. Dopo aver visto come crearli online, ora vediamo come farlo con PowerShell localmente nel nostro computer.
Come utilizzare PowerShell per ascoltare file MP3
| |Tra le tante cose curiose, e magari inutili per alcuni, che si possono fare con PowerShell, vi è anche la possibilità di ascoltare i file MP3. Chiaramente non avete un player audio completo come VLC, per esempio, dove potete scegliere i brani, fermarli o modificare il volume, PowerShell si limita a riprodurre i brani che trova nella cartella che gli indicate nello script e per fermarli dovete solo chiudere PowerShell.