From af2081caaf9e92c6c2aa70cf28f4040ab38408f6 Mon Sep 17 00:00:00 2001
From: rick <rick@gnous.eu>
Date: Wed, 24 Feb 2021 02:01:44 +0100
Subject: [PATCH] Ajout affichage des variables

---
 src/boitoutil/oui-dire.c | 27 ++++++++++++++++++++++++---
 src/boitoutil/oui-dire.h |  1 +
 2 files changed, 25 insertions(+), 3 deletions(-)

diff --git a/src/boitoutil/oui-dire.c b/src/boitoutil/oui-dire.c
index a2f55eb..9f4a461 100644
--- a/src/boitoutil/oui-dire.c
+++ b/src/boitoutil/oui-dire.c
@@ -20,9 +20,30 @@ void echo(char *args)
   int i = 0;
   while (tmp != '\0')
   {
-   putchar(tmp);
-   i++;
-   tmp = *(args + i);
+    if (tmp == '$')
+    {
+      i++;
+      i += get_var((args+i), i);
+    }
+    else
+    {
+      putchar(tmp);
+      i++;
+    }
+
+    tmp = *(args + i);
   }
   putchar('\n');
 }
+
+int get_var(char *str, int i)
+{
+  char *tmp = calloc(strlen(str), sizeof(char));
+  strcpy(tmp, str);
+  char f = ' ';
+  char *token = strtok(tmp, &f);
+  printf("%s", getenv(token));
+  int ret = strlen(token);
+  free(tmp);
+  return ret;
+}
diff --git a/src/boitoutil/oui-dire.h b/src/boitoutil/oui-dire.h
index 447dc67..75d47fb 100644
--- a/src/boitoutil/oui-dire.h
+++ b/src/boitoutil/oui-dire.h
@@ -9,5 +9,6 @@
 
 void usage();
 void echo(char *args);
+int get_var(char *str, int i);
 
 #endif