Archive - GxWare RSS Feed

Tips: FileMover – Spostare automaticamente i file tra cartelle

Piccolo articolo per altrettanto piccola utility. La utilizzo da diverso tempo, oggi voglio parlarvene, magari può tornare utile a qualcuno di voi all’ascolto! Si chiama File Mover e -come dovrebbe far intuire il nome- permette di “muovere file“, banale no? Eppure lo fa perfettamente.

Prende i file contenuti in una cartella e li sposta verso una seconda cartella ad intervalli di tempo precedentemente specificati. Ciò vuol dire che ad ogni ciclo stabilito effettuerà in autonomia un taglia-incolla di tutto ciò che trova nella sorgente muovendo i dati nella destinazione.

L’utilizzo nella mia attuale configurazione prevede una cartella (sorgente) sul mio account Dropbox all’interno della quale sposto i file che dovranno poi finire in una seconda cartella (destinazione) presente solo sul PC di casa a Ravenna, anch’esso ovviamente con Dropbox installato. Si tratta di file che non necessitano di alcuna sincronia / versioning, ma che devono poter essere conservati nel disco esterno, dove solitamente tengo i backup di fotografie o scansioni di documenti.

File Mover mi permette di effettuare lo spostamento senza che io mi connetta remotamente al Desktop ravennate:

In alto nel primo box evidenziato sarà necessario inserire i secondi (l’intervallo) al termine dei quali partirà il controllo dei file contenuti nella cartella sorgente (qui troverete un calcolatore che potrà aiutarvi nella conversione da minuti o ore). Ovviamente nel secondo box dovrete indicare la cartella sorgente e quella destinazione, quindi avviare il contatore attraverso il grande pulsante posto in alto a destra nella finestra. Potrete vedere ciò che accade nel box “Action Log“, evidenziato in fondo alla finestra.

L’utility è liberamente scaricabile dalla pagina ufficiale mattcollinge.wordpress.com/software/file-mover, è gratuita per uso casalingo, contrariamente ad un utilizzo commerciale che dovrebbe essere soggetto al pagamento di una licenza. Permette inoltre di specificare altre opzioni avanzate che vi permettono di specificare multipli comportamenti di spostamento (Advanced File Move) e non solo. Il comportamento del software è soggetto alle vostre esigenze, sufficientemente ben fatto tanto da rinunciare a scrivere un paio di righe in batch o cercare un diverso tipo di software, magari più costoso o più pesante!

Buon lavoro :-)

Random Password Generator, reloaded!

Era il 2 febbraio del 2009 quando per la prima volta è comparso un articolo riguardante un servizio tanto “stupido” quanto utile allo stesso tempo.

A due anni di distanza dalla sua prima versione (più che stabile, visto il lavoro che doveva svolgere), oggi vi presento una seconda versione che va incontro ad alcune richieste ricevute nel frattempo (grazie Marco, grazie Paolo, ndr): 9 caratteri, un ciclo in grado di mischiare meglio le lettere e i numeri disponibili, la possibilità di copiare e incollare la password priva di spazio finale (un piccolo bug che c’era nella precedente versione, almeno via Firefox e Chrome).

L’indirizzo è rimasto lo stesso:

services.gxware.org/passwd

nonostante lo script che sta alla base della pagina sia cambiato diventando decisamente più ristretto (script originale: TotallyPHP):


<?php
		function createRandomPassword($len) {
		if (!isset($len)) { $len = 9; };
		$chars = "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
		$charsLen = (strlen($chars)-1);
		srand((double)microtime()*1000000);
		$i = 0;
		$pass = '' ;
		while ( $i < $len ) {
			$num = rand() % $charsLen;
			$tmp = substr($chars, $num, 1);
			$pass = $pass . $tmp;
			$i++;
		}
    return $pass;
}
$password = createRandomPassword();
echo "$password";?>

La seconda delle 3 novità consiste nel fatto che -se necessario- potrete scaricare una differente versione del tool anche in locale, uno script in Visual Basic che vi permetterà -una volta avviato- di scegliere il numero di password da generare e salvarle in un file di testo, una per ciascuna riga così da poter rapidamente copiare ed incollare ciò che vi serve. Il codice è stato realizzato e pubblicato su Tek-Tips.com, ed è disponibile all’indirizzo:

services.gxware.org/passwd/randomPasswd.vbs

Per scaricarlo cliccate con il tasto destro sul collegamento e salvatelo in locale sul vostro PC (Salve destinazione come …)


'==========================================================================
'
' NAME: RandomPasswordGenerator.vbs
'
' AUTHOR: Mark D. MacLachlan , The Spider's Parlor
' URL: http://www.thespidersparlor.com
' DATE  : 7/29/2004
' MODIFICATIONS:
'         9/2/2008 Added dictionary object to ensure
'                  uniqueness of passwords
'
' COMMENT: Generates Random Passwords meeting "Complex" Requirements
'          By default will generate a 6 digit password.
'          Edit line passLen = 6 to change length
'==========================================================================
Option Explicit

Dim pGenNum, newpass, passList, inFlag, pgLength, x, fso, ts, passLen
Const ForWriting = 2
passLen = 9

'Give inFlag (input Flag) an initial value to ensure we run once
inFlag = "Seed"

Do While inFlag <> pGenNum
pGenNum = InputBox("How many passwords would you like to create?" & vbCrLf & _
"Enter a Numeric Value" & vbCrLf & _
"Blank Entry Will Cancel Script","Enter Number of Passwords to Create")

'Quit if no entry
If pGenNum = "" Then WScript.Quit

'Now clear inFlag so we can compare it to the pGenInput going forward
inFlag = ""
pgLength = Len(pGenNum)
'Enumerate each character to ensure we only have numbers
For x = 1 To pgLength
If Asc(Mid(pGenNum,x,1)) < 48 Or Asc(Mid(pGenNum,x,1)) > 57 Then
inFlag = ""
Else
'Build inFlag one character at a time if it is a number.
inFlag = inFlag & Mid(pGenNum,x,1)
End If
Next
'We made it through each character.  If not equal prompt for a number.
If inFlag <> pGenNum Then inFlag = ""
Loop

'Generate the number of required passwords.
'Use a dictionary object to ensure uniqueness.
Dim objDict
Set objDict = CreateObject("Scripting.Dictionary")
Do Until objDict.Count = CInt(pGenNum)
newpass = generatePassword(passLen)
If Not objDict.Exists(newpass) Then
objDict.Add newpass, "Unique Password"
passList = passList & newpass & vbCrLf
End If
Loop

'Now save it all to a text file.
Set fso = CreateObject("Scripting.FileSystemObject")
Set ts = fso.CreateTextFile ("PasswordList.txt", ForWriting)
ts.write passList
MsgBox "Passwords saved to PasswordList.txt",,"Passwords Generated"
set ts = nothing
set fso = nothing

Function generatePassword(PASSWORD_LENGTH)

Dim NUMLOWER, NUMUPPER, LOWERBOUND, UPPERBOUND, LOWERBOUND1, UPPERBOUND1, SYMLOWER, SYMUPPER
Dim newPassword, count, pwd
Dim pCheckComplex, pCheckComplexUp, pCheckComplexLow, pCheckComplexNum, pCheckComplexSym, pCheckAnswer

NUMLOWER    = 48  ' 48 = 0
NUMUPPER    = 57  ' 57 = 9
LOWERBOUND  = 65  ' 65 = A
UPPERBOUND  = 90  ' 90 = Z
LOWERBOUND1 = 97  ' 97 = a
UPPERBOUND1 = 122 ' 122 = z
SYMLOWER    = 33  ' 33 = !
SYMUPPER    = 46  ' 46 = .
pCheckComplexUp  = 0 ' used later to check number of character types in password
pCheckComplexLow = 0 ' used later to check number of character types in password
pCheckComplexNum = 0 ' used later to check number of character types in password
pCheckComplexSym = 0 ' used later to check number of character types in password

' initialize the random number generator
Randomize()

newPassword = ""
count = 0
DO UNTIL count = PASSWORD_LENGTH
' generate a num between 2 and 10

' if num <= 2 create a symbol
If Int( ( 10 - 2 + 1 ) * Rnd + 2 ) <= 2 Then
pwd = Int( ( SYMUPPER - SYMLOWER + 1 ) * Rnd + SYMLOWER )

' if num is between 3 and 5 create a lowercase
Elseif Int( ( 10 - 2 + 1 ) * Rnd + 2 ) > 2 And  Int( ( 10 - 2 + 1 ) * Rnd + 2 ) <= 5 Then
pwd = Int( ( UPPERBOUND1 - LOWERBOUND1 + 1 ) * Rnd + LOWERBOUND1 )

' if num is 6 or 7 generate an uppercase
Elseif Int( ( 10 - 2 + 1 ) * Rnd + 2 ) > 5 And  Int( ( 10 - 2 + 1 ) * Rnd + 2 ) <= 7 Then
pwd = Int( ( UPPERBOUND - LOWERBOUND + 1 ) * Rnd + LOWERBOUND )

Else
pwd = Int( ( NUMUPPER - NUMLOWER + 1 ) * Rnd + NUMLOWER )
End If

newPassword = newPassword + Chr( pwd )

count = count + 1

'Check to make sure that a proper mix of characters has been created.  If not discard the password.
If count = (PASSWORD_LENGTH) Then
For pCheckComplex = 1 To PASSWORD_LENGTH
'Check for uppercase
If Asc(Mid(newPassword,pCheckComplex,1)) >64 And Asc(Mid(newPassword,pCheckComplex,1))< 90 Then
pCheckComplexUp = 1
'Check for lowercase
ElseIf Asc(Mid(newPassword,pCheckComplex,1)) >96 And Asc(Mid(newPassword,pCheckComplex,1))< 123 Then
pCheckComplexLow = 1
'Check for numbers
ElseIf Asc(Mid(newPassword,pCheckComplex,1)) >47 And Asc(Mid(newPassword,pCheckComplex,1))< 58 Then
pCheckComplexNum = 1
'Check for symbols
ElseIf Asc(Mid(newPassword,pCheckComplex,1)) >32 And Asc(Mid(newPassword,pCheckComplex,1))< 47 Then
pCheckComplexSym = 1
End If
Next

'Add up the number of character sets.  We require 3 or 4 for a complex password.
pCheckAnswer = pCheckComplexUp+pCheckComplexLow+pCheckComplexNum+pCheckComplexSym

If pCheckAnswer < 3 Then
newPassword = ""
count = 0
End If
End If
Loop
'The password is good so return it
generatePassword = newPassword
End Function

Ultima novità è l’integrazione del Random Password Generator all’interno degli strumenti “mobili” del Network GxWare, da poco trasferiti sotto il nuovo dominio network.gxware.org/iphone:

network.gxware.org/iphone/passwd.php

Questo vi permetterà di generare rapidamente password sufficientemente complesse avendo a portata di mano solo il vostro telefono ed una connessione a internet.

Per chi volesse invece continuare ad usare la prima versione, ho lasciato la possibilità di accedere alla precedente pagina iniziale semplicemente puntando il browser a services.gxware.org/passwd/v1.php.

Buon lavoro! :-)

UPDATE
Grazie al suggerimento dell’utente “caccolangrifata lo script è stato modificato includendo l’utilizzo di lettere maiuscole (oltre che minuscole, come di default) e la possibilità di specificare una differente quota caratteri della password. La modifica è stata operata sia sulla pagina del servizio standard che quella mobile! :-)

ABP X Files – Installazione e utilizzo su Internet Explorer 9

Qualche tempo fa un Luca su Twitter mi ha chiesto quale fosse il miglior Ad Blocker disponibile per Internet Explorer 9 e –soprattutto- se fosse possibile integrare al suo interno i filtri presenti in X Files, fino ad oggi testati e funzionanti su Firefox (principalmente), Chrome e Safari (per Opera non ho conferme, qualcuno dei miei utenti lo utilizza e sa se X Files è pienamente compatibile con il browser?).

Ho fatto qualche ricerca a ho trovato una soluzione sufficientemente affidabile e personalizzabile più o meno facilmente, grazie alla quale è possibile importare i filtri di X Files anche sul browser di Redmond. Si chiama Simple Adblock , è gratuito, un eseguibile da installare con dei semplici clic a base del solito “avanti, avanti, fine”.

Il suo comportamento predefinito lo porterà ad utilizzare i filtri EasyList internazionali (disponibili anche per AdBlock Plus per Firefox, ndr). A installazione eseguita sarà però possibile modificare tale comportamento facendogli caricare una lista personalizzata che dovrà essere posizionata in una cartella specifica del proprio profilo Windows, metodo attraverso il quale potrete caricare facilmente X Files (versione stabile o /DEV che sia, a vostra scelta). Unico neo, almeno per il momento, è l’impossibilità di ottenere aggiornamenti automatici come succede invece per Firefox con AdBlock Plus a bordo (vale lo stesso per Google Chrome). Sarà quindi vostra cura tenere monitorato il rilascio delle nuove versioni stabili di X Files per poter aggiornare manualmente la lista filtri. Per questo è disponibile da tempo un feed RSS dedicato del mio blog, basterà sottoscriverlo cliccando qua.

Brevemente, riporto un passo-passo per installare X Files sul vostro Internet Explorer 9 (e –immagino e spero- anche sulle successive versioni del browser Microsoft), Simple Adblock permettendo ;)

Download e installazione

Simple AdBlock si scarica dal sito web ufficiale, per l’installazione sarà necessario avere i diritti di amministratore sulla propria macchina (banalità che è bene però ricordare). Internet Explorer dovrà essere chiuso, in caso contrario l’applicazione lo farà autonomamente avvisando prima l’utente e chiedendo conferma a procedere.

Simple Adblock: componente aggiuntivo in Internet Explorer 9

Ad installazione terminata, il componente aggiuntivo è già funzionante ma si appoggerà –come già detto- sui filtri EasyList. Per poter modificare questo comportamento sarà necessario dargli in pasto un file di testofilter_personal.txt” contenente i filtri con sintassi compatibile AdBlock Plus, che dovrà risiedere all’interno della cartella LocalLow, facente a sua volta parte del profilo personale di Windows (nel mio caso C:\Users\Giovanni\AppData\LocalLow\Simple AdBlock).

Nel caso in cui troviate già un file con quel nome, basterà semplicemente rinominarlo e inserire la versione di X Files che preferite (o più semplicemente, l’ultima disponibile scaricandola dall’indirizzo mozilla.gfsolone.com/filtri.txt).

Il funzionamento è immediato, dalla successiva tab aperta Simple Adblock per Internet Explorer utilizzerà i filtri inclusi in X Files! :-)

In conclusione

E’ possibile notare la differenza tra l’utilizzo di Simple Adblock con a bordo Easylist e X Files semplicemente guardando queste due immagini (in ordine di citazione):

Ho cercato di effettuare più test possibili, la configurazione Internet Explorer 9 e X Files è attiva sul mio portatile da circa due mesi e fino ad ora non ho riscontrato particolari anomalie, è però possibile che in alcuni casi i filtri non funzionino a dovere, per questo motivo chiedo la vostra collaborazione come già successo per Safari e Chrome, sarebbe bello poter avere feedback ed eventuali nuove richieste integrabili in X Files o in una eventuale nuova lista dedicata specificatamente a Internet Explorer.

Come al solito, per qualsiasi tipo di segnalazione, vi invito ad aprire un bug su Google Code, nello spazio dedicato a X Files.

Nel frattempo studierò un rapido metodo che vi permetta di scaricare in maniera del tutto automatica l’ultima versione di X Files integrandola in Simple Adblock con due semplici clic! Tenete d’occhio questo articolo per futuri aggiornamenti ;-)

Buona navigazione a tutti!

Portami.li: l’URL Shortening Service di GxWare

Basato sul progetto BrokenScript, Portami.li è il dominio scelto per l’URL Shortening Service di GxWare.org, l’ennesimo servizio che potrebbe tornarvi utile quando meno ve lo aspettate :)

Inutile dire che con la moltitudine di tool identici a disposizione dell’utenza, probabilmente non si sentiva la mancanza dell’ennesimo “URL Shortener, ma avendo a disposizione un dominio così appetibile mi è sembrato giusto installare e personalizzare un’ulteriore lama del coltellino svizzero messo a vostra disposizione tramite i servizi.

Il funzionamento è basilare: basterà inserire l’URL da “restringere” e un nome breve a vostra scelta da assegnare al nuovo URL che sarà così composto:

http://portami.li?nomebreve

Ho già attivato un paio link che riportano velocemente alle domande / risposte per ABP X Files, per provarli sarà sufficiente cliccare qui o qui :)

E non dimenticatevi di iSysAdm

In attesa di essere spostato sul dominio dei servizi, iSysAdm è ancora disponibile all’indirizzo sys.portami.li. La serie di pagine facilmente ottimizzate per i dispositivi mobili, mettono a disposizione alcuni tool particolarmente utili in casi di emergenza: Ping, Traceroute e Whois.

Nel caso in cui vogliate saltare i convenevoli e chiedere la pagina dei risultati, sarà possibile richiamare gli script così:

  • http://sys.portami.li/ping.php?host=127.0.0.1&count=4&submit=Ping!
  • http://sys.portami.li/tracert.php?host=127.0.0.1&submit=Traceroute!
  • http://sys.portami.li/whois.php?domain=gxware.org

Entrambi i servizi sono ancora in fase Beta, nel caso in cui trovaste delle anomalie o volete suggerire dei miglioramenti (o collaborare, perché no), sono a vostra totale disposizione :)

Buon lavoro.

SupportoInformatico.org: spazio a OpenID

Che l’estate porti via visite e utenti lo sappiamo un po’ tutti, si va in vacanza, ci si rilassa, si prova a lasciare i neuroni spenti in favore del dolce far niente, tutto rallenta fino alla nuova stagione che generalmente è caratterizzata (e identificata) con l’arrivo di settembre.

Per questo motivo, come a voler mettere carne fresca al fuoco, vi annuncio che SupportoInformatico.org incontra OpenID e permette da ora l’autenticazione tramite l’omonimo sistema.

Riassumendo: nonostante non possa fungere da entità di certificazione locale (per il momento, ndr, in futuro potrebbe essere abilitato anche SupportoInformatico.org a rilasciare OpenID) potrete registrare il vostro account semplicemente inserendo il vostro OpenID nella maschera di login:

supportoinformatico.org/wp-login

Supporto Informatico: login con OpenID

Supporto Informatico: relazione di trust con OpenID

Una volta inserito il vostro indirizzo OpenID e autorizzato SupportoInformatico.org a lavorare attraverso quest’ultimo, sarete automaticamente inseriti nel sistema e registrati. Da li al diventare autori è un semplice passo che potrete (come già detto) effettuare mandando una mail o inserendo un commento in questo articolo (una volta registrati):

Supporto Informatico: registrazione con OpenID completata!

Spero davvero che questo ulteriore miglioramento alla struttura di SupportoInformatico.org possa invogliare qualcuno a collaborare con il sottoscritto (e pochi altri) a riportare casistiche e problematiche particolari (e non) che possano aiutare altri tecnici nella loro quotidiana battaglia contro utenti e problemi di ogni tipo! ;)

Chiaro che -inutile dirlo probabilmente- resta valido anche il vecchio metodo di registrazione!

Page 1 of 1412345»...Last »