Comment puis-je diriger la sortie d’une commande unix vers un script Julia?

J’essaie d’utiliser la construction STDIN avec Julia pour lire dans la sortie d’une commande unix:

 #!/usr/bin/julia readline(STDIN) 

Puis dans mon terminal:

 $ cat myfile.txt | ./pipe.jl 

mais je ne reçois aucune sortie. Qu’est-ce que je fais mal?

Vous ne faites rien avec le résultat de readline(STDIN) . Quel type de sortie voulez-vous?

Contrairement à la REPL interactive, un script Julia n’imprimera pas automatiquement les résultats. Vous devez print explicitement la chaîne résultante:

 print(readline(STDIN)) 

La ligne:

 #!/usr/bin/julia 

Doit être le premier, car Unix ne lit que la première ligne et la vérifie pour #! . En outre, vous devez faire:

 chmod +x pipe.jl 

Pour le faire fonctionner à partir de la construction ./pipe.jl .