Comment puis-je faire en sorte qu'un fichier de commandes puisse s'exécuter sur d'autres ordinateurs

9

Lorsque je crée un fichier de commandes sur mon ordinateur pour l'exécuter start c:\Users\________\Whatever\..., cela fonctionne sur ma machine.

Comment puis-je le faire fonctionner sur la machine de quelqu'un d'autre, puisque son nom d'utilisateur n'est pas mon nom d'utilisateur?

Konrad
la source

Réponses:

19

Vous pouvez utiliser la variable d'environnement %USERPROFILE%. Cela fonctionne à partir de Windows XP et sur, et détecte automatiquement la lettre de lecteur et le chemin d'accès au dossier du profil de l'utilisateur actuel.

start %USERPROFILE%\Whatever

Canadian Luke
la source
9

Vous pouvez utiliser les variables d'environnement Windows . Celui que vous pourriez utiliser dans ce cas serait %username%, qui renvoie le nom de l'utilisateur actuel.

c'est à dire:

start c:\users\%username%\Whatever

De plus / alternativement, si vous visez spécifiquement le dossier de profil de l'utilisateur ( <drive>:\users\<username>), vous pouvez utiliser la %userprofile%variable, qui renverra le chemin d'accès complet au profil de l'utilisateur actuel, ce qui est utile lorsque vous ciblez des systèmes d'exploitation plus anciens comme XP (où il est <drive>:\document and settings\<username>par défaut), ou où le dossier de profil a été déplacé vers un autre lecteur / emplacement.

c'est à dire:

start %userprofile%\Whatever

Il y a plusieurs autres variables là-dedans que vous pouvez trouver utiles pour écrire des lots, je vous conseille de parcourir toute la liste. :)

Ƭᴇcʜιᴇ007
la source
2
Je voterais favorablement si ce n'était pas pour mes deux derniers systèmes Windows ayant conservé les profils utilisateur e:\userset d:\documents and settings...
user1686
@grawity J'ai essayé de le garder générique en lui montrant la liste des variables disponibles, et en ne supposant pas qu'ils voulaient toujours cibler le répertoire du profil utilisateur. Mais bon point, je l'ai donc mis à jour pour couvrir également la variable% userprofile%.
Ƭᴇcʜιᴇ007
Mec, tu viens de me voler ma réponse: P
Canadian Luke
Pas volé, juste développé ma réponse pour la rendre plus complète. Encore une fois, j'ai essayé d'éviter de faire spécifiquement sur le répertoire du profil utilisateur à l'origine, mais apparemment, si je ne couvre pas également% userprofile%, ce n'est pas une réponse «correcte». ;)
Ƭᴇcʜιᴇ007
Ne vous inquiétez pas, avec la langue qui sort dans le commentaire, c'est une blague :)
Canadien Luke