PHWinfo banniere

Titres
PORTAIL ANNUAIRE ARTICLES COMPARATEUR HÉBERGEURS DEVIS FORUMS RÉDUCTEUR D'URL
Précédent   PHWinfo > Forums Hébergement > Forum Hébergement serveur > ms.public.fr.win.server > Fichier BATCH
S'inscrire FAQ Membres Recherche Messages du jour Marquer les forums comme lus
Fichier BATCH

Réponse
 
LinkBack Outils de la discussion
Vieux 09/10/2006, 10h45   #1
Mathieu
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Fichier BATCH

Bonjour,

Je créer en ligne de commende un .zip que je voudrai nommer avec l'heure Ã
laquelle il a été créer.
Je sais qu'ilfaut mettre une valeur entre % comme par exemple %USERNAME%
mais j'arrive pas.
Est ce que quelqu'un aurait une liste de valeur que l'on peut mettre entre %%
Merci
  Réponse avec citation
Vieux 09/10/2006, 11h04   #2
Jonathan Bismuth
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: Fichier BATCH

Bonjour Mathieu,

il y en a pas mal et je ne saurais te répondre précisément (pose plutôt la
question dans scripting).
Concernant ton problème d'heure et donc la variable %time%, elle pourra te
poser un problème du fait de son formatage ex : 12:02:17,97.

J'avais utilisé à l'époque un petit bout de batch pour la reformater avec un
"_", le voici pour heure et date :

For /f "tokens=1" %%i in ('date /t') do set OldDate=%%i
Set NewDate=%OldDate:/=_%
For /f "tokens=1" %%i in ('time /t') do set OldTime=%%i
Set NewTime=%OldTime::=_%

Tu peux maintenant appeler ton fichier %NewTime%-%NewDate%.txt pour avoir un
fichier utilisant les deux variables, ou simplement %NewTime%.txt pour
l'heure.

Cordialement,
--
Jonathan BISMUTH
NET2S Group
MVP Windows Server - Directory Services
MCSE 2000/ADSI-AutoIT Scripter
Transcript (ID: 691839, code: MCSE2000)
www.portail-mcse.net
pour me contacter http://cerbermail.com/?oAsXWZnZF1


"Mathieu" <Mathieu@discussions.microsoft.com> a écrit dans le message de
news: AEE3910F-3EA6-41BF-B90F-39434D0B401F@microsoft.com...
> Bonjour,
>
> Je créer en ligne de commende un .zip que je voudrai nommer avec l'heure à
> laquelle il a été créer.
> Je sais qu'ilfaut mettre une valeur entre % comme par exemple %USERNAME%
> mais j'arrive pas.
> Est ce que quelqu'un aurait une liste de valeur que l'on peut mettre entre
> %%
> Merci



  Réponse avec citation
Vieux 09/10/2006, 12h57   #3
Jean-Claude BELLAMY
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: Fichier BATCH

Dans le message :AEE3910F-3EA6-41BF-B90F-39434D0B401F@microsoft.com,
Mathieu <Mathieu@discussions.microsoft.com> a pris la peine d'écrire ce qui
suit :
> Je créer en ligne de commende un .zip que je voudrai nommer avec
> l'heure à laquelle il a été créer.
> Je sais qu'ilfaut mettre une valeur entre %


Cela s'appelle une VARIABLE D'ENVIRONNEMENT !

> comme par exemple %USERNAME% mais j'arrive pas.


En l'occurence ici ce sont les variables %DATE% et %TIME% qui nous
intéresse.

La commande
Echo %DATE% %TIME%
affiche (à la date de rédaction de ce message) :
09/10/2006 13:41:06,43

Pour générer un nom de fichier à partir de ces résultats, il faut les
modifier un peu car les caractères "/" et ":" sont INTERDITS dans un nom de
fichier.

On va donc utiliser une substitution grâce à la commande "SET"
Set nomfichier=%DATE:/=-%_%TIME:=-%.zip

La syntaxe de substitution de chaine est la suivante :
SET nouvellevariable=%anciennevariable:anciennechaine= nouvellechaine%


Ainsi la commande
echo %nomfichier%
affiche :
09-10-2006_13-46-29,85.zip



> Est ce que quelqu'un aurait une liste de valeur que l'on peut mettre
> entre %%

Tu veux parler je présume des variables prédéfinies ?

Variables STATIQUES définies par le système :
==================================
%PATH%
liste des répertoires par défaut
%COMSPEC%
nom du processeur de commandes
%SYSTEMROOT%
nom du répertoire racine du système
%WINDIR%
identique à %SYTEMROOT%
(utilisé pour compatibilité avec Windows 9x/ME)
%USERNAME%
nom du compte utilisateur en cours
%COMPUTERNAME%
nom NetBIOS de l'ordinateur
%USERDOMAIN%
au choix :
- nom NetBIOS de l'ordinateur (workgroup)
- nom du domaine (domaine)
%SYSTEMDRIVE%
nom du disque contenant %SYSTEMROOT%
%HOMEDRIVE%
identique à %SYSTEMDRIVE%
%USERPROFILE%
le chemin complet du dossier de l'utilisateur en cours
%HOMEPATH%
identique à %USERPROFILE%
%ALLUSERPROFILE%
chemin complet du dossier commun à tous les utilisateurs
%PROGRAMFILES%
chemin par défaut des programmes
%PATHEXT%
liste des extensions de fichiers considérés comme exécutables
(= lancés simplement en tapant leur nom)
%TEMP%
chemin des fichiers temporaires
%TMP%
chemin des fichiers temporaires
(généralement identique à %TEMP%)
%PROCESSOR_IDENTIFIER%
description du microprocesseur utilisé
....




Variables DYNAMIQUES définies par le système :
====================================

Ces variables DYNAMIQUES sont en réalité des fonctions, dont le contenu est
susceptible de varier :
%DATE%
date en cours
%TIME%
heure en cours
%CD%
répertoire en cours
%RANDOM%
nombre aléatoire compris entre 0 et 32767
%ERRORLEVEL%
code de retour de la dernière commande
%CMDEXTVERSION%
n° de version du processeur de commandes en cours
%CMDCMDLINE%
ligne de commande qui a appelé le processeur de commandes


RAPPELS
=======

Le principe des variables d'environnement se retrouve dans TOUS les systèmes
d'exploitation (DOS, Windows 16, 32 et 64 bits, Linux, UNIX, BeOS, ...)
Ce sont des variables dont le contenu (une chaine de caractères) est
accessible de n'importe où :
- fenêtre de commande (console)
- système d'exploitation (pour ses besoins internes)
- programme utilisateur (quelconque, écrit en C, Delphi, C#, ...)
- script (quelconque, écrit en VBS, JS, Perl, Python, PHP,..)
Seule la syntaxe diffère légèrement.

Dans les OS d'origine Microsoft, depuis que MSDOS existe (1981), une
"variable d'environnement" est définie par un nom encadrée par le caractère
"%" (dans une fenêtre de commande)
Sous UNIX (et dérivés : Linux, FreeBSD, ..) le caractère est "$" au lieu de
"%" (et uniquement en tête du nom)*

L'utilisation de ces variables permet de s'affranchir totalement (dans un
script p.ex., ...) des variantes entre machines et versions de système.

Sous Windows :
Les variables d'environnement "système" (communes à tous les comptes) sont
stockées dans la clef :
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

Ainsi que, éventuellement, celles déclarées dans "Autoexec.bat" (si, si !!!)
C'est d'ailleurs le seul usage -facultatif - de autoexec.bat sous NT
par les commandes :
SET variable=contenu
....
et aussi
PATH .......


Les variables d'environnement "utilisateur" (propres à chaque compte) sont
stockées dans la clef :
HKCU\Environment


Exemples (variable %SYSTEMROOT%, qui donne le répertoire principal du
système)


Batch :
-------
echo %SYSTEMROOT%


En C :
------
char *windir;
windir = getenv( "SYSTEMROOT");


En Delphi :
----------
var windir : string;
windir:=GetEnvironmentVariable('SYSTEMROOT');


En VBS :
--------
Set shell = WScript.CreateObject("WScript.Shell")
windir=shell.ExpandEnvironmentStrings("%SYSTEMROOT %")
....


--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP]
http://www.bellamyjc.org ou http://jc.bellamy.free.fr


  Réponse avec citation
Vieux 09/10/2006, 12h57   #4
Major TOM
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: Fichier BATCH

si le batch est tu type cmd ou bat essaie %%USERNAME%%

"Mathieu" <Mathieu@discussions.microsoft.com> a écrit dans le message de
news: AEE3910F-3EA6-41BF-B90F-39434D0B401F@microsoft.com...
> Bonjour,
>
> Je créer en ligne de commende un .zip que je voudrai nommer avec l'heure à
> laquelle il a été créer.
> Je sais qu'ilfaut mettre une valeur entre % comme par exemple %USERNAME%
> mais j'arrive pas.
> Est ce que quelqu'un aurait une liste de valeur que l'on peut mettre entre
> %%
> Merci



  Réponse avec citation
Vieux 09/10/2006, 12h59   #5
Major TOM
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: Fichier BATCH

Erreur de ma part excusez moi %%USERNAME%% n'est pas bon
"Jean-Claude BELLAMY" <Jean-Claude.Bellamy@wanadoo.fr> a écrit dans le
message de news: uS8Heo56GHA.756@TK2MSFTNGP05.phx.gbl...
> Dans le message :AEE3910F-3EA6-41BF-B90F-39434D0B401F@microsoft.com,
> Mathieu <Mathieu@discussions.microsoft.com> a pris la peine d'écrire ce
> qui suit :
>> Je créer en ligne de commende un .zip que je voudrai nommer avec
>> l'heure à laquelle il a été créer.
>> Je sais qu'ilfaut mettre une valeur entre %

>
> Cela s'appelle une VARIABLE D'ENVIRONNEMENT !
>
>> comme par exemple %USERNAME% mais j'arrive pas.

>
> En l'occurence ici ce sont les variables %DATE% et %TIME% qui nous
> intéresse.
>
> La commande
> Echo %DATE% %TIME%
> affiche (à la date de rédaction de ce message) :
> 09/10/2006 13:41:06,43
>
> Pour générer un nom de fichier à partir de ces résultats, il faut les
> modifier un peu car les caractères "/" et ":" sont INTERDITS dans un nom
> de fichier.
>
> On va donc utiliser une substitution grâce à la commande "SET"
> Set nomfichier=%DATE:/=-%_%TIME:=-%.zip
>
> La syntaxe de substitution de chaine est la suivante :
> SET nouvellevariable=%anciennevariable:anciennechaine= nouvellechaine%
>
>
> Ainsi la commande
> echo %nomfichier%
> affiche :
> 09-10-2006_13-46-29,85.zip
>
>
>
>> Est ce que quelqu'un aurait une liste de valeur que l'on peut mettre
>> entre %%

> Tu veux parler je présume des variables prédéfinies ?
>
> Variables STATIQUES définies par le système :
> ==================================
> %PATH%
> liste des répertoires par défaut
> %COMSPEC%
> nom du processeur de commandes
> %SYSTEMROOT%
> nom du répertoire racine du système
> %WINDIR%
> identique à %SYTEMROOT%
> (utilisé pour compatibilité avec Windows 9x/ME)
> %USERNAME%
> nom du compte utilisateur en cours
> %COMPUTERNAME%
> nom NetBIOS de l'ordinateur
> %USERDOMAIN%
> au choix :
> - nom NetBIOS de l'ordinateur (workgroup)
> - nom du domaine (domaine)
> %SYSTEMDRIVE%
> nom du disque contenant %SYSTEMROOT%
> %HOMEDRIVE%
> identique à %SYSTEMDRIVE%
> %USERPROFILE%
> le chemin complet du dossier de l'utilisateur en cours
> %HOMEPATH%
> identique à %USERPROFILE%
> %ALLUSERPROFILE%
> chemin complet du dossier commun à tous les utilisateurs
> %PROGRAMFILES%
> chemin par défaut des programmes
> %PATHEXT%
> liste des extensions de fichiers considérés comme exécutables
> (= lancés simplement en tapant leur nom)
> %TEMP%
> chemin des fichiers temporaires
> %TMP%
> chemin des fichiers temporaires
> (généralement identique à %TEMP%)
> %PROCESSOR_IDENTIFIER%
> description du microprocesseur utilisé
> ...
>
>
>
>
> Variables DYNAMIQUES définies par le système :
> ====================================
>
> Ces variables DYNAMIQUES sont en réalité des fonctions, dont le contenu
> est susceptible de varier :
> %DATE%
> date en cours
> %TIME%
> heure en cours
> %CD%
> répertoire en cours
> %RANDOM%
> nombre aléatoire compris entre 0 et 32767
> %ERRORLEVEL%
> code de retour de la dernière commande
> %CMDEXTVERSION%
> n° de version du processeur de commandes en cours
> %CMDCMDLINE%
> ligne de commande qui a appelé le processeur de commandes
>
>
> RAPPELS
> =======
>
> Le principe des variables d'environnement se retrouve dans TOUS les
> systèmes d'exploitation (DOS, Windows 16, 32 et 64 bits, Linux, UNIX,
> BeOS, ...)
> Ce sont des variables dont le contenu (une chaine de caractères) est
> accessible de n'importe où :
> - fenêtre de commande (console)
> - système d'exploitation (pour ses besoins internes)
> - programme utilisateur (quelconque, écrit en C, Delphi, C#, ...)
> - script (quelconque, écrit en VBS, JS, Perl, Python, PHP,..)
> Seule la syntaxe diffère légèrement.
>
> Dans les OS d'origine Microsoft, depuis que MSDOS existe (1981), une
> "variable d'environnement" est définie par un nom encadrée par le
> caractère "%" (dans une fenêtre de commande)
> Sous UNIX (et dérivés : Linux, FreeBSD, ..) le caractère est "$" au lieu
> de "%" (et uniquement en tête du nom)*
>
> L'utilisation de ces variables permet de s'affranchir totalement (dans un
> script p.ex., ...) des variantes entre machines et versions de système.
>
> Sous Windows :
> Les variables d'environnement "système" (communes à tous les comptes) sont
> stockées dans la clef :
> HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
>
> Ainsi que, éventuellement, celles déclarées dans "Autoexec.bat" (si, si
> !!!)
> C'est d'ailleurs le seul usage -facultatif - de autoexec.bat sous NT
> par les commandes :
> SET variable=contenu
> ....
> et aussi
> PATH .......
>
>
> Les variables d'environnement "utilisateur" (propres à chaque compte) sont
> stockées dans la clef :
> HKCU\Environment
>
>
> Exemples (variable %SYSTEMROOT%, qui donne le répertoire principal du
> système)
>
>
> Batch :
> -------
> echo %SYSTEMROOT%
>
>
> En C :
> ------
> char *windir;
> windir = getenv( "SYSTEMROOT");
>
>
> En Delphi :
> ----------
> var windir : string;
> windir:=GetEnvironmentVariable('SYSTEMROOT');
>
>
> En VBS :
> --------
> Set shell = WScript.CreateObject("WScript.Shell")
> windir=shell.ExpandEnvironmentStrings("%SYSTEMROOT %")
> ...
>
>
> --
> May the Force be with You!
> La Connaissance s'accroît quand on la partage
> ----------------------------------------------------------
> Jean-Claude BELLAMY [MVP]
> http://www.bellamyjc.org ou http://jc.bellamy.free.fr
>
>



  Réponse avec citation
Réponse


Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +1. Il est actuellement 05h52.


Édité par : vBulletin® version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0 RC5 Tous droits réservés.
Version française #16 par l'association vBulletin francophone
PHWinfo est un site Éducation Sans Frontières ©2000-2008
Ad Management by RedTyger
©Tous droits réservés par les parties respectives
Page generated in 0,19071 seconds with 13 queries