Il existe diverses suggestions sur la façon de déterminer le nom d'utilisateur actuel sur un shell de commande Windows sans utiliser whoami
, tel que cette question ou cette question . La réponse générique semble être echo %username%
. Cependant, lorsque je le fais (sous Windows XP), le shell répond par %username%
. Est-ce que je manque quelque chose?
windows-xp
command-line
user-accounts
countermode
la source
la source
username
n'est pas défini ou défini sur la chaîne littérale%username%
. Pour savoir lequel, tapezset username
. Les deux sont peu probables, mais ma meilleure hypothèse est que vous avez exécuté un fichier de commandes qui utiliseusername
en tant que variable de travail et l'efface à la sortie, recherchez donc la chaîne dans vos fichiers batchusername
(recherche insensible à la casse).Réponses:
peut-être vous manque la variable d'environnement USERNAME pour une raison quelconque. Exécutez la commande set pour répertorier les variables d’environnement et leurs valeurs. Mon XP a USERNAME et je ne l’ai pas ajouté, donc XP l’a. Mais courez ensemble et voyez ce que vous avez
Un tas de variables d'environnement ont l'utilisateur
Ajoutée
Dans un exemple similaire à celui dans lequel vous vous trouvez .. Ici, je me suis connecté à distance à la machine, elle exécute bvsshserver (serveur ssh bitvise, également appelé winshd) (qui est connecté même à partir du client cygwin, donnera une ligne de commande Windows) bien que openssh serveur via cygwin donne bash .. Vous pouvez utiliser le client openssh de cygwin pour vous connecter à bitvise sshd et obtenir une ligne de commande Windows
Dans ce cas, "VIRTUSER" a le nom d'utilisateur, bien que différent de celui indiqué par whoami.
Quel serveur SSH (ou connexion à distance au serveur de programmes) votre ordinateur XP est-il exécuté?
la source
set
C'est une bonne suggestion, même si elle n'en dit pas beaucoup dans la situation.username
n'est pas réglé etwhoami
N'est pas installé.%TEMP%
non plus? je serais surpris si win xp pre sp1 était si limité! combien d'utilisateurs sont là! regardez peut-être dans c: \ documents et paramètres pour voir combien de dossiers il y a. Si tant de choses ont été supprimées sur la machine, il n’ya peut-être qu’un seul profil utilisateur! (Cela dit. Je ne doute pas que je n'ai pas d'utilisateur virtuel winsshd dans mes documents et paramètres).%TEMP%
est réglé.Vous ne manquez rien. Peut-être que vous l'exécutez dans PowerShell? Si vous ne recevez pas la valeur correcte renvoyée par cmd, vous devrez vous renseigner davantage.
Lorsque vous êtes dans une invite de commande Windows (cmd pas PowerShell), entrez:
Dans PowerShell, entrez:
la source