aboutsummaryrefslogtreecommitdiffstats
path: root/c/ls.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--c/ls.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/c/ls.c b/c/ls.c
index 5d5ce43..0e2e01f 100644
--- a/c/ls.c
+++ b/c/ls.c
@@ -1,7 +1,10 @@
#include "gbos.h"
-/* ls: list files in the filesystem. */
+/* ls [dir]: list a directory (default: current). */
void main(void) {
+ char *argv[4];
char name[16];
+ unsigned char argc = argv_parse(argv, 4);
unsigned char i;
+ if (opendir(argc > 0 ? argv[0] : ".")) { puts("ls: no such directory"); nl(); return; }
for (i = 0; flist(i, name); i++) { name[15] = 0; puts(name); nl(); }
}