IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Lire un fichier distant avec SSH


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 98
    Points : 61
    Points
    61
    Par défaut Lire un fichier distant avec SSH
    Bonjour,
    Je suis sur un serveur A et j'aimerais lire/ecrire un fichier situé sur le serveur B
    j'ai une connexion SSH.
    Mon script ne marche pas et je ne comprends pas pourquoi

    $filename = $_SESSION['gameserver']['data']['abs_path']."/cstrike/cfg/server.cfg";
    $handle = fopen ("ssh cs@{$_SESSION['gameserver']['data']['server']} $filename", "r");
    $contents = fread ($handle, filesize ($filename));
    fclose ($handle);
    Output:

    Warning: fopen(ssh cs@62.2.XXX.xx/home/cs/csmike/cstrike/cfg/server.cfg): failed to open stream: No such file or directory
    Si je mets le chemin sur le serveur, il est correct...

    Auriez-vous une bonne idée ? Je n'ai rien trouvé dans mes recherches avec fopen et ssh
    Merci.

  2. #2
    Rédacteur
    Avatar de Yoshio
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 732
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 732
    Points : 2 853
    Points
    2 853
    Par défaut
    Pour windows c'est 'rb' qu'il faut mettre a fopen si je me rapelle bien

    Si tu est sous windows change sinon je voit pas trop

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 98
    Points : 61
    Points
    61
    Par défaut
    $handle = popen("/usr/bin/ssh cs@{$_SESSION['gameserver']['data']['server']} cat $filename 2>&1", "r" );
    Voila ce qu'il me faut pour "lire" un fichier distant et le coller dans une variable
    Maintenant j'essaie pouvoir écrire dans ce fichier depuis ma variable

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 98
    Points : 61
    Points
    61
    Par défaut
    okay,
    Alors j'arrive a écrire dans mon fichier a vec le code suivant:

    $content=escapeshellcmd ($_REQUEST['edit']);
    $handle = popen("/usr/bin/ssh cs@{$_SESSION['gameserver']['data']['server']} "echo '{$content}'>$filename\"", "w");

    Mais j'ai 2 trucs bizzares:

    1)si je mets pas le "escapeshellcmd", rien ne s'écrit dans le fichier, si je fais un echo de ma variable, rien ne s'écrit
    mais si je met un text en dur, il s'écrt dans le fichier...
    Pourquoi ?
    2)Lorsque j'édite mon fichier sous linux,
    a la fin de chaque ligne, au lieu d'voir un retour j'ai un ^M avec le texte en continu.
    Comment parer ces problèmes (depuis php)?

    Merci.

Discussions similaires

  1. [PHP 4] [PHP 4.4.1] probleme pour lire un fichier distant avec CURL
    Par seben dans le forum Langage
    Réponses: 6
    Dernier message: 27/11/2009, 08h38
  2. [Excel] Comment lire des fichiers excel avec php?
    Par dear_rihab dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 02/11/2007, 12h38
  3. Lire les fichiers m4a avec xmms
    Par shinobi dans le forum Applications et environnements graphiques
    Réponses: 2
    Dernier message: 05/12/2005, 11h37
  4. [BCB 5]Comment lire un fichier AVI avec un TAnimate ?
    Par Sitting Bull dans le forum C++Builder
    Réponses: 2
    Dernier message: 15/09/2004, 11h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo