summaryrefslogtreecommitdiff
path: root/userspace/foolshell.c
diff options
context:
space:
mode:
Diffstat (limited to 'userspace/foolshell.c')
-rw-r--r--userspace/foolshell.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/userspace/foolshell.c b/userspace/foolshell.c
index 173b0b2..15f26e3 100644
--- a/userspace/foolshell.c
+++ b/userspace/foolshell.c
@@ -1,6 +1,7 @@
#include <stdio.h>
#include <string.h>
#include "syscalls.c"
+#include "../fs/fs.h"
void hello() {
puts(
@@ -85,7 +86,7 @@ int process(char *buf)
if(!strcmp(command,"HELP"))
{
- puts("foolshell: supported built-in commands: HELP, ECHO, TIME, MEM, PROC, TASKS, ALLOC, READ, SYSCALL.");
+ puts("foolshell: supported built-in commands: HELP, ECHO, TIME, MEM, PROC, TASKS, ALLOC, LS, SYSCALL.");
}
else if(!strcmp(command,"TIME"))
{
@@ -141,6 +142,18 @@ int process(char *buf)
printf("system call returned %i\n",ebx);
}
+ else if(!strcmp(command,"LS"))
+ {
+
+ fs_dirent dirs[5];
+ int ls=readdir("/dupa",&dirs,5);
+ int i;
+ for(i=0;i<ls;i++)
+ {
+ printf("%i %s%c\n",dirs[i].inode, dirs[i].name, ((dirs[i].type==2)?'/':' '));
+ }
+
+ }
else if(!strcmp(command,"ECHO"))
{