Aller au contenu
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

[Résolu] Batch fonction copy et %os%


morron2

Messages recommandés

bonsoir

 

dans un batch sous vista je voudrais effectuer cette commande:

copy zz.txt %userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\zz.txt

 

mais cela ne marche pas je ne peux copier que jusqu'au sous/rep \windows\

erreur (la syntaxe de la est commande incorrecte)

- avec "copy" y a t'il une limite dans le nombre de sous/rep

- avec xcopy l'erreur est (nombre de parametres invalide)

 

je voudrais également pouvoir différencier les %os% win2000, xp, vista

%os% renvoie toujours "windows_nt"

Lien vers le commentaire
Partager sur d’autres sites

Ca ne fonctionne que jusqu'au répertoire windows parce que dans celui d'en-dessous il y a un espace, et qu'un espace sur la ligne de commande, ça délimite les paramètres de la commande...

Essaie avec des guillemets :

copy zz.txt "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\zz.txt"

Essaie avec les "noms courts" :

copy zz.txt %userprofile%\AppData\Roaming\Microsoft\Windows\STARTME~1\Programs\Startup\zz.txt

Lien vers le commentaire
Partager sur d’autres sites

bonsoir

 

merci c'est bon (j'avais oublié)

 

mais

pour %os% qui renvoie toujours windows_nt j'ai essayé la commande "ver" mais qui renvoie pour vista

"microsoft windows version xxx"

-es ce que tous les vista renvoient la meme chose ?

c'est à dire "microsoft windows version [6. ]"

 

j'ai donc rajouté ce qui est en rouge ci-dessous

@echo off

::initialisation de la variable systeme

set systeme=inconnue

::pour windows 2000 Ne fonctionne pas chez moi

ver | find /i "windows 2000" > nul

IF not errorlevel 1 set systeme=windows 2000

 

::pour windows XP

ver | find /i "windows XP" > nul

IF not errorlevel 1 set systeme=windows XP

::pour windows vista

ver | find /i "microsoft windows [version 6" > nul

if not errorlevel 1 set systeme=vista

echo.

echo system %systeme%

echo.

pause > NUL

édité car sous win 2000 cela ne fonctionne pas chez moi mais marche avec xp,vista

Modifié par morron2
Lien vers le commentaire
Partager sur d’autres sites

Invité Pang-Invité
mais

pour %os% qui renvoie toujours windows_nt j'ai essayé la commande "ver" mais qui renvoie pour vista

"microsoft windows version xxx"

-es ce que tous les vista renvoient la meme chose ?

c'est à dire "microsoft windows version [6. ]"

 

Chez moi il répond la même chose : Microsoft windows [version 6.0.6001]

Lien vers le commentaire
Partager sur d’autres sites

bonjour

 

je reviens sur la récupération de l'os system (%os%) le script suivant fonctionne sous (win2000,xp,vista)

s'il est tapé et enregistré sur vista avec "notepad2 (1.0.12)"

mais cela ne marche pas s'il est tapé sur le "notepad" de win2000 ou xp

 

:: Pour Win2000

ver find "Windows 2000" > nul

IF not errorlevel 2 set systeme=2000

:: Pour Win XP

ver | find /i "Windows XP" > nul

IF not errorlevel 1 set systeme=XP

:: Pour Win Vista

ver | find /i "Windows [version 6" > nul

if not errorlevel 1 set systeme=vista

cls

set %systeme%=%systeme%

echo vous avez %systeme%

pause

Lien vers le commentaire
Partager sur d’autres sites

  • Modérateurs
Le script suivant fonctionne sous (win2000,xp,vista)

s'il est tapé et enregistré sur vista avec "notepad2 (1.0.12)"

mais cela ne marche pas s'il est tapé sur le "notepad" de win2000 ou xp

Ta formulation est ambiguë, elle pourrait faire croire que le script fonctionne ou ne fonctionne pas en fonction de l'éditeur de texte sous lequel on en a saisi le contenu ? Ce qui me semble hautement improbable :P

Lien vers le commentaire
Partager sur d’autres sites

  • Modérateurs

J'avoue être estomaqué. Cela signifierait que d'un éditeur de texte à l'autre certains caractères seraient codés différemment en ASCII ? Je veux bien le croire pour les caractères accentués*, mais je suis surpris pour tout le reste de l'ensemble alphanumérique [A-Z a-z 0-9] et pour les symboles habituels qu'on trouve dans les lignes de commande...

__________

* J'ai eu l'occasion de constater la difficulté dans des échanges avec un organisme officiel polonais : leur alphabet comporte des lettres particulières comme le L barré, et des accentuations spéciales, en particulier sur des consonnes - d'où des décalages dans la table ASCII, qui n'est hélas pas extensible.

Lien vers le commentaire
Partager sur d’autres sites

bonjour

 

j'ai essayé ce jour de reproduire les erreurs mais n'y suis pas parvenu

 

comme je faisais des essais d'un pc à l'autre j'ai peut etre modifié des trucs sur l'un et pas sur les autres

 

 

j'ai essayé sur un xp avec notepad.

pas eu de pb.

Lien vers le commentaire
Partager sur d’autres sites

  • Tonton a modifié le titre en [Résolu] Batch fonction copy et %os%

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.
Remarque : votre message nécessitera l’approbation d’un modérateur avant de pouvoir être visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...