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?
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?
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%
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
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.
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.