10
votes

Invoquant des commandes Shell de Squeak ou Pharo

Comment pouvez-vous appeler des commandes shell de Squeak and Pharo? Ces environnements ont-ils quelque chose comme la fonction System () dans certaines langues UNIX pour exécuter des commandes de shell externes ou les backtstics (ne peut pas les faire ici à l'éditeur, mais ce que vous obtenez lorsque vous appuyez sur la touche à gauche de " 1 "et au-dessus" onglet ") pour capturer la sortie des commandes?


0 commentaires

6 Réponses :


3
votes

En grincage, vous pouvez utiliser Commandshell , mais je ne sais pas quoi (si quelque chose ) est disponible pour Pharo à l'heure actuelle.


1 commentaires

OsProcess dirigera des commandes Shell. Vous n'avez besoin que de Commandshell si vous avez besoin de la sortie ou que vous souhaitez un terminal d'interface graphique à l'intérieur de l'image.



5
votes

Je pense que vous pouvez utiliser le package OsProcess pour faire ce que vous voulez. De plus, je pense qu'il est préférable de demander à la liste de diffusion de Squeak-dev ou Pharo.


0 commentaires

2
votes

Support Shell dans Squeak / Pharo est assez limité. Il est prévu de l'améliorer; Voir le Coral Projet . Vos contributions sont les bienvenues.


0 commentaires

1
votes

Vous avez deux solutions:

Utilisez le package Trapper. Avantages: installation rapide et facile. Inconvénients: fonctionnalité limitée, uniquement sur Win32.

Utilisez le package OsProcess / Commandshell. Avantages: une très bonne fonctionnalité (tuyaux, environnementaux, espace de travail ressemblant à une coque ...) et plate-forme croisée. Inconvénients: doit utiliser des outils VMMaker pour construire le plugin externe.


0 commentaires

0
votes

J'utilise Windows 10 avec Pharo 6, et je l'ai trouvé irréalisable d'utiliser le osprocess code> ou ossubprocess code> ossubprocess (difficile à installer ou les dernières versions ne sont pas prises en charge pour Windows).

Qu'est-ce que le travail pour moi est libc. Vous pouvez rediriger Sterrr vers un fichier à l'aide de 2> code> à l'intérieur de la commande: p> xxx pré>

Il est possible de manipuler les variables d'environnement en utilisant (bien qu'il renvoie une valeur de 1 défaillance impliquant dans Windows): p> xxx pré>

Cependant, je n'ai pas pu modifier le répertoire actuel: P>

result := LibC uniqueInstance system: 
    'cd ', myDirectory, ' && ls > /tmp/output.txt 2>', errors.


0 commentaires

1
votes

Sous Windows, il y a une enveloppe sur l'API Win vous permettant de le faire: xxx

 Entrez la description de l'image ici

Il y a beaucoup de soutien à la majeure partie de ce que Windows peut faire avec des processus de là (env, ...)

donc, regardez dans le catalogue pour les os windows.

entrez Description de l'image ici


0 commentaires