Discussione:
BAT che copia un file su un percorso variabile
(troppo vecchio per rispondere)
miconet
2007-07-26 15:36:07 UTC
Permalink
Premesso che non sono un esperto e che, quindi, potrei errare anche
nell'uso della terminologia, vi sottopongo il mio quesito sperando che
qualcuno possa essermi d'aiuto.
Ho la necessità di realizzare un file BAT che copi un determinato file
(allegato ad una e-mail) sul desktop del PC del destinatario.
Tutti i destinatari del file sono dipendenti della stessa azienda per
cui il percorso da indicare per la copia e "quasi" identico se non per
la variabile data dal "nome utente" indicato all'atto
dell'autenticazione.
Faccio un esempio:

copy c:\pippo.txt C:\Documents and Settings\"Nome Utente"\Desktop

Nell'esempio sopra riportato il percorso varia nell'indicazione del
parametro "Nome Utente" che varia a seconda che ci si sia autenticati
all'avvio con il nome di Tizio anzichè Caio.

Ora vi chiedo se esiste una istruzione DOS che rilevi automaticamente
il nome utente e proceda, quindi, alla copia del file allegato alla
mail sul desktop.

P.S.: lo so che in windows basta fare "salva con nome" ma siccome il
file deve essere spedito a 1800 persone (molte delle quali con
pochissima dimestichezza informatica) vorrei limitare l'intervento dei
singoli utenti ad un doppio click sull'allegato della mail.

Grazie a quanti vorranno aiutarmi.

Michele
Franz aRTiglio
2007-07-26 20:31:54 UTC
Permalink
Post by miconet
Ho la necessità di realizzare un file BAT che copi un determinato file
(allegato ad una e-mail) sul desktop del PC del destinatario.
[cut]
Post by miconet
Tutti i destinatari del file sono dipendenti della stessa azienda
[cut]
Post by miconet
Ora vi chiedo se esiste una istruzione DOS che rilevi automaticamente
il nome utente e proceda, quindi, alla copia del file allegato alla
mail sul desktop.
%userprofile%\desktop

es: echo %userprofile%\desktop
Post by miconet
P.S.: lo so che in windows basta fare "salva con nome" ma siccome il
file deve essere spedito a 1800 persone (molte delle quali con
pochissima dimestichezza informatica) vorrei limitare l'intervento dei
singoli utenti ad un doppio click sull'allegato della mail.
Il problema e' piu' complesso:

il 90% dei client di posta, per ragioni di sicurezza
impediscono l'esecuzione di comandi o istruzioni negli
allegati email, questo per evitare che, ad esempio, un
messaggio di posta apparentemente innocuo possa installare
o copiare del codice maligno nel computer.

Quindi il metodo da te pensato incontra non pochi
problemi, inoltre e' potenzialmente dannoso per i server
di posta; anche se l'allegato che spedisci e' di soli 100
kilobyte, moltiplicato per 1800 significa 180 mega di
spazio "buttato" nel sever di posta elettronica, sopratutto
se il client usato non archivia i messaggi localmente ma
li lascia sul server.
Quindi anche se fosse possibile fare un batch (o un vbscript)
che possa accedere al file in allegato alla mail, i problemi
nascerebbero inizialmente per i criteri di protezione, poi
per l'enormita' di dati di traffico sulla rete generato, nonche'
per lo spazio "sprecato" in ogni singola casella email.

Il batch NON hai accesso al file in allegato, quindi
dovrebbe per forza di cose essere "parcheggiato" su un
server di rete dal quale andare a "pescarlo".

In succo: metti il file su un server web o ftp (se sei
in intranet, bene! altrimenti puoi usare uno dei tanti
hosting gratuiti, nonche' avendo 1800 dipendenti, suppongo
che l'azienda habbia uno straccio di server web).

Cosi' ti basta inviare il link al file nel messaggio.

Il risultato finale e' lo stesso, pero' con grande
risparmio di banda, sforzi e spazio.
miconet
2007-07-27 07:20:55 UTC
Permalink
Post by Franz aRTiglio
Post by miconet
Ho la necessità di realizzare un file BAT che copi un determinato file
(allegato ad una e-mail) sul desktop del PC del destinatario.
[cut]
Post by miconet
Tutti i destinatari del file sono dipendenti della stessa azienda
[cut]
Post by miconet
Ora vi chiedo se esiste una istruzione DOS che rilevi automaticamente
il nome utente e proceda, quindi, alla copia del file allegato alla
mail sul desktop.
%userprofile%\desktop
es: echo %userprofile%\desktop
Post by miconet
P.S.: lo so che in windows basta fare "salva con nome" ma siccome il
file deve essere spedito a 1800 persone (molte delle quali con
pochissima dimestichezza informatica) vorrei limitare l'intervento dei
singoli utenti ad un doppio click sull'allegato della mail.
il 90% dei client di posta, per ragioni di sicurezza
impediscono l'esecuzione di comandi o istruzioni negli
allegati email, questo per evitare che, ad esempio, un
messaggio di posta apparentemente innocuo possa installare
o copiare del codice maligno nel computer.
Quindi il metodo da te pensato incontra non pochi
problemi, inoltre e' potenzialmente dannoso per i server
di posta; anche se l'allegato che spedisci e' di soli 100
kilobyte, moltiplicato per 1800 significa 180 mega di
spazio "buttato" nel sever di posta elettronica, sopratutto
se il client usato non archivia i messaggi localmente ma
li lascia sul server.
Quindi anche se fosse possibile fare un batch (o un vbscript)
che possa accedere al file in allegato alla mail, i problemi
nascerebbero inizialmente per i criteri di protezione, poi
per l'enormita' di dati di traffico sulla rete generato, nonche'
per lo spazio "sprecato" in ogni singola casella email.
Il batch NON hai accesso al file in allegato, quindi
dovrebbe per forza di cose essere "parcheggiato" su un
server di rete dal quale andare a "pescarlo".
In succo: metti il file su un server web o ftp (se sei
in intranet, bene! altrimenti puoi usare uno dei tanti
hosting gratuiti, nonche' avendo 1800 dipendenti, suppongo
che l'azienda habbia uno straccio di server web).
Cosi' ti basta inviare il link al file nel messaggio.
Il risultato finale e' lo stesso, pero' con grande
risparmio di banda, sforzi e spazio.
Grazie per la risposta molto esaustiva. Ho parlato con il personale
tecnico che si trova perfettamente d'accordo con te, quindi,
adotteremo la tua soluzione.
Ciao
gioacchino
2007-07-26 20:40:59 UTC
Permalink
Post by miconet
Premesso che non sono un esperto e che, quindi, potrei errare anche
nell'uso della terminologia, vi sottopongo il mio quesito sperando che
qualcuno possa essermi d'aiuto.
Ho la necessità di realizzare un file BAT che copi un determinato file
(allegato ad una e-mail) sul desktop del PC del destinatario. Tutti i
destinatari del file sono dipendenti della stessa azienda per cui il
percorso da indicare per la copia e "quasi" identico se non per la
variabile data dal "nome utente" indicato all'atto dell'autenticazione.
copy c:\pippo.txt C:\Documents and Settings\"Nome Utente"\Desktop
Nell'esempio sopra riportato il percorso varia nell'indicazione del
parametro "Nome Utente" che varia a seconda che ci si sia autenticati
all'avvio con il nome di Tizio anzichè Caio.
Ora vi chiedo se esiste una istruzione DOS che rilevi automaticamente il
nome utente e proceda, quindi, alla copia del file allegato alla mail
sul desktop.
P.S.: lo so che in windows basta fare "salva con nome" ma siccome il
file deve essere spedito a 1800 persone (molte delle quali con
pochissima dimestichezza informatica) vorrei limitare l'intervento dei
singoli utenti ad un doppio click sull'allegato della mail.
Grazie a quanti vorranno aiutarmi.
Michele
%USERPROFILE% non è un istruzione dos ma una variabile d'ambiente windows.
L'istruzione qui sotto fa quello che vuoi.

@echo copy c:\pippo.txt %USERPROFILE%\Desktop

ciao
miconet
2007-07-27 07:21:08 UTC
Permalink
Post by gioacchino
Post by miconet
Premesso che non sono un esperto e che, quindi, potrei errare anche
nell'uso della terminologia, vi sottopongo il mio quesito sperando che
qualcuno possa essermi d'aiuto.
Ho la necessità di realizzare un file BAT che copi un determinato file
(allegato ad una e-mail) sul desktop del PC del destinatario. Tutti i
destinatari del file sono dipendenti della stessa azienda per cui il
percorso da indicare per la copia e "quasi" identico se non per la
variabile data dal "nome utente" indicato all'atto dell'autenticazione.
copy c:\pippo.txt C:\Documents and Settings\"Nome Utente"\Desktop
Nell'esempio sopra riportato il percorso varia nell'indicazione del
parametro "Nome Utente" che varia a seconda che ci si sia autenticati
all'avvio con il nome di Tizio anzichè Caio.
Ora vi chiedo se esiste una istruzione DOS che rilevi automaticamente il
nome utente e proceda, quindi, alla copia del file allegato alla mail
sul desktop.
P.S.: lo so che in windows basta fare "salva con nome" ma siccome il
file deve essere spedito a 1800 persone (molte delle quali con
pochissima dimestichezza informatica) vorrei limitare l'intervento dei
singoli utenti ad un doppio click sull'allegato della mail.
Grazie a quanti vorranno aiutarmi.
Michele
%USERPROFILE% non è un istruzione dos ma una variabile d'ambiente windows.
L'istruzione qui sotto fa quello che vuoi.
@echo copy c:\pippo.txt %USERPROFILE%\Desktop
ciao- Nascondi testo tra virgolette -
- Mostra testo tra virgolette -
Grazie anche a te per la precisazione che, comunque, mi tornerà utile.
Ciao

Loading...