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

OpenOffice & LibreOffice Discussion :

[Bash]Lancer un script bash depuis une macro basic [LibreOffice][Tableur]


Sujet :

OpenOffice & LibreOffice

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    sans
    Inscrit en
    Juillet 2019
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Juillet 2019
    Messages : 141
    Par défaut [Bash]Lancer un script bash depuis une macro basic
    Bonjour,
    ce fil fait référence à Lancer une application externe (Linux) depuis une cellule calc
    titre enchanteur, les explications demeurent impénétrables pour le noob que je suis en feuille calc libreoffice (7.4.7.2.2 sous Debian Bookworm) ...
    Où donc se met "l'intrusction shell" ?
    mais ce qui m'intéresse accessoirement, c'est aussi de savoir comment lancer un script bash depuis une macro , j'ai tenté avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    session.RunApplication("shell","/path_abs/script.sh")
    mais ça ne fonctionne pas, non plus que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    session.RunApplication("/bin/bash","/path_abs/script.sh")
    j'ai un peu tout essayé ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    session.RunApplication("/path_abs/script.sh", #args)
    ci-dessus ça fonctionne partiellement, ça appelle "kate" sur ce fichier, sans doute parce que "kate" est l'appli par défaut du système pour ouvrir les fichiers de format texte (ou .txt)
    Et puis "kate" est bien une application, mais un script, que devrais-je mettre , est-ce bien RunApplication sur le service "session" que je dois invoqué d'ailleurs ?

  2. #2
    Membre éclairé
    Homme Profil pro
    sans
    Inscrit en
    Juillet 2019
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Juillet 2019
    Messages : 141
    Par défaut
    bonsoir, je pense avoir la solution (merci à JPL sur un autre forum) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub call_my_script
        Dim str1 As String
        GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
        Dim session As Variant
        session = CreateScriptService("Session")
     
    	str1 = "ici plusieurs mots"
    	' essai-macro-bavard.sh n'étant pas une application nommée du système mais un simple fichier exécutable, ...
     ' manque déclaration variable file
    	file = "/home/.../essai-macro-bavard.sh"
    	session.RunApplication("/bin/bash", file & " '" & str1 & "'")
    End Sub
    avec le shell:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    !#/bin/bash
    echo "ce qu'on veut $1" >> essaiMacro.txt
    L'espace entre le fichier et le texte qui suit est évidemment indispensable. Les apostrophes également s'il y a plusieurs mots à inérer.

    JPL
    Je n'ai pas l'impression que ça fonctionne, peut-être que je ne déclare pas la variable file de la bonne façon, j'ai essayé "as string" et "as variant", il manque encore quelque chose ...

  3. #3
    Membre éclairé
    Homme Profil pro
    sans
    Inscrit en
    Juillet 2019
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Juillet 2019
    Messages : 141
    Par défaut
    j'ai également créé un lien dans /usr/local/bin (dans $PATH) vers le script : rien
    j'ai également déplacer le script dans /usr/local/bin/ : rien
    ....

  4. #4
    Membre éclairé
    Homme Profil pro
    sans
    Inscrit en
    Juillet 2019
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Juillet 2019
    Messages : 141
    Par défaut [Résolu] Merci à JPL et Dude qui sévissent sur le forum AOO (apache openoffice)
    le code mentionné dans le post initial aurait dû fonctionner, encore faut-il avoir une version assez récente de libreoffice suite, je suis sur la suite stable de Debian (7.4.7.2 quelque chose) et le bug n'est pas encore résolu dans les versions antérieures à ... à celle où c'est résolu
    cependant, on m'a fort aimablement renseigner d'une solution aussi simple que radicale :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub call_script
     Shell("~/mon_script.sh")
    End Sub

  5. #5
    Membre expérimenté Avatar de Amélie Ladoque
    Inscrit en
    Novembre 2004
    Messages
    292
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 292
    Par défaut
    on m'a fort aimablement renseigner d'une solution aussi simple que radicale
    Fournir le lien n'aurait-il pas été plus profitable ?
    D'autant que l'explication y est plus claire.
    https://forum.openoffice.org/fr/foru...ic.php?t=69524

  6. #6
    Membre éclairé
    Homme Profil pro
    sans
    Inscrit en
    Juillet 2019
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Juillet 2019
    Messages : 141
    Par défaut

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Execution d'un script bash depuis une page PHP qui se trouve sur un autre serveur
    Par Whisper40 dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 08/07/2018, 15h20
  2. lancement d'un script bash depuis une page php (dans un terminal)
    Par klampke dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 26/11/2008, 02h41
  3. lancer un .exe depuis une macro
    Par 20100. dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/02/2008, 10h42
  4. Lancer une macro excel depuis une macro powerpoint
    Par toma65 dans le forum VBA PowerPoint
    Réponses: 7
    Dernier message: 12/06/2007, 09h41
  5. comment lancer du code depuis une macro ?
    Par faiglon dans le forum Access
    Réponses: 15
    Dernier message: 13/07/2006, 11h03

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