CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[PHP][BASH] Lancer des commandes bash en PHP

2011nobile
2011nobile
Niveau 10
18 juillet 2015 à 01:44:00

Bonjour à tous :)

J'essaye actuellement de créer une interface web pour un programme bash , mais je rencontre quelques difficultés :(

Quand le programme est lancé normalement via sa commande, on ne sort pas de cette commande, et le terminal capte les touches sur lesquelles ont appui pour modifier le comportement du programme.

J'ai essayé un shell exec php basique en lançant la commande d'initialisation et ça fonctionne; mon programme se lance bien.

Par contre, shell_exec ne retournant rien (ou en tout cas pas une ressource sur laquelle on peut agir après l'appel) je ne peux pas modifier le comportement du programme en rebalancant un shell_exec contenant la touche sur laquelle j'aimerais faire un appui.

Comment puis-je me débrouiller pour garder une ressource ou une session ou je ne sais quoi auquel je pourrais envoyer des commandes ? (sachant que j'aimerais pouvoir y accéder même une fois le script arrêté)

Merci à vous :)

Message édité le 18 juillet 2015 à 01:44:15 par 2011nobile
godrik
godrik
Niveau 30
18 juillet 2015 à 04:36:47

ca depend comment le programme natif interagit avec les entree terminal. Est ce qu'il se contente de lire l'entree standard ou est ce qu'il fait des trucs a base de termcap (genre du ncurses)?

2011nobile
2011nobile
Niveau 10
18 juillet 2015 à 10:10:01

Le 18 juillet 2015 à 04:36:47 godrik a écrit :
ca depend comment le programme natif interagit avec les entree terminal. Est ce qu'il se contente de lire l'entree standard ou est ce qu'il fait des trucs a base de termcap (genre du ncurses)?

Il se contente de lire l'entrée standard :(

godrik
godrik
Niveau 30
18 juillet 2015 à 17:21:52

La fonction que tu veux c'est proc open. Elle permet d'avoir des pipes (typiquement 3) pour l'entree standard, la sortie standard et la sortie d'erreur.
http://php.net/manual/en/function.proc-open.php

2011nobile
2011nobile
Niveau 10
19 juillet 2015 à 00:11:38

Le 18 juillet 2015 à 17:21:52 godrik a écrit :
La fonction que tu veux c'est proc open. Elle permet d'avoir des pipes (typiquement 3) pour l'entree standard, la sortie standard et la sortie d'erreur.
http://php.net/manual/en/function.proc-open.php

Alleluia ! :bave: Ça a l'air d'être ça.

Par contre, aurais tu une idée de la façon dont je pourrais sauvegarder la ressource pour réutiliser la même entre deux éxecutions du script php ? :(

Je demande ça parce que j'ai vu qu'on ne pouvais pas sérialiser une ressource :-(

Merci en tout cas !

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Programmation
  • Création de sites web
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment