1 votes

Y a-t-il une solution Windows pour un programme qui dépend de netrc?

J'ai un script Perl qui fonctionne bien sur Windows, cependant une fonction requiert l'utilisation d'un fichier .netrc pour récupérer des identifiants.

Existe-t-il un équivalent de .netrc sur Windows, ou une autre solution?

4voto

TheCompWiz Points 10142

Les fenêtres devraient être identiques, à l'exception du fait que votre répertoire personnel se trouve dans un emplacement différent.

Essayez de chercher dans le répertoire %userprofile% pour .netrc.

S'il est manquant, vous pouvez le créer dans l'Explorateur en créant un nouveau fichier nommé .netrc. (le dernier . disparaîtra).

Vous pourriez avoir besoin de créer une variable d'environnement nommée HOME qui pointe vers %USERPROFILE%, comme ceci: setx HOME %USERPROFILE%

1voto

Levon Points 316

Sur Windows OS ouvrir cmd.exe, tapez

echo %HOME%

puis

echo %USERPROFILE%

La sortie devrait être la même. Sinon, faites ceci

setx HOME %USERPROFILE%

Ensuite, créez le fichier _netrc à l'intérieur du répertoire %USERPROFILE% et ajoutez

machine 
login 
password 

Exemple ici

Important! sur Windows, vous devriez créer _netrc au lieu de .netrc

Plus d'informations que vous pouvez lire ici

0voto

Aaron Miller Points 9509

Vous pourriez vérifier si vous exécutez Windows, et si c'est le cas, consulter un fichier de configuration séparé, au lieu de chercher .netrc:

my $config_file = '';
if ($^O eq 'MSWin32') {
  $config_file = 'c:\\chemin\\vers\\config.ini';
}
else {
  $config_file = '~/.netrc';
};

Le fichier .netrc se trouve par défaut dans le répertoire $HOME de l'utilisateur, équivalent sur la plate-forme Windows à c:\{Utilisateurs|Documents and Settings}\ -- 'Utilisateurs' pour Windows Vista et versions plus récentes, 'Documents and Settings' pour XP et versions antérieures. Vous pourriez créer un fichier .netrc là-bas et y insérer les informations d'identification nécessaires, ce qui nécessiterait moins (ou aucun) changement dans votre code -- cependant, cela ne respecte pas les conventions de Windows, qui prévoient que les fichiers de configuration soient dans C:\Users\\AppData\Local\\\ ou similaire. C'est à vous de décider si vous préférez modifier votre code pour respecter la convention, ou simplement chercher dans le répertoire de base du profil utilisateur pour plus de commodité.

Bien sûr, si vous exécutez le script sous Cygwin Perl, vous pouvez simplement créer ~/.netrc pour le compte utilisateur, le renseigner, et c'est fait.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X