Entrer dans un exécutable via stdin?

J’ai un exécutable que je dois saisir dans un fichier .wav sur mon bureau. L’exécutable attend l’entrée sur stdin.

Utilisons l’exemple:

/Users/tomcruise/Desktop/executable /Users/tomcruise/Desktop/music.wav 

J’utilise Mac OS X.

Ouvrez Terminal et procédez comme suit:

 $ cd /Users/tomcruise/Desktop $ ./executable < music.wav 

Quelle est exactement votre question? stdin est différent des arguments de ligne de commande. Ce dernier est un descripteur de fichier disponible pour le programme au démarrage. Ces derniers sont un tas de chaînes disponibles sous forme de chaînes. Fonctionnement

 /Users/tomcruise/Desktop/executable /Users/tomcruise/Desktop/music.wav 

va “donner” le nom de fichier music.wav à votre exécutable que vous pouvez traiter.

Si votre exécutable prend des arguments de ligne de commande, ce serait:

/Users/tomcruise/Desktop/executable /Users/tomcruise/Desktop/music.wav

Si elle prend de stdin, ce serait:

/Users/tomcruise/Desktop/executable < /Users/tomcruise/Desktop/music.wav

Vous écrivez l’argument juste après le nom de fichier:

 cd /Users/tomcruise/Desktop ./executable music.wav