bonjour,
alors voilà je débute en C car je dois l'apprendre dans le cadre d'un cours d'architecture des systèmes d'exploitation .
alors un petit énoncé de tp était de faire une implémentation de la commande echo (shell) en C sauf qu'elle devait se baser sur l'entrée standard (pas comme la commande echo justement) .
J'ai tout de suite pensé à un bête passage par argument comme ceci :
mais la redirection d'entrée standard ne fonctionne pas, tout comme pour la commande echo .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 /* Implementation de la commande echo en C */ #include <stdio.h> int main(int argc, char *argv[]) { int i; for (i=1; i < argc; i++) { printf("%s ",argv[i]); } printf("\n"); return 0; }
exemple:
./eko bonjour
me donne bien : bonjour
mais ./eko < bonjour.txt
où bonjour.txt contient bonjour
ne me donne rien
c'est logique en fait je crois vu que je passe par argument mais y à t'il moyen de prendre en compte cette redirection quand même?
merci
Partager