diff options
| author | Michal Idziorek <m.i@gmx.at> | 2014-11-24 11:07:32 +0100 |
|---|---|---|
| committer | Michal Idziorek <m.i@gmx.at> | 2014-11-24 11:07:32 +0100 |
| commit | a06d25b7afcd8b28ca001349634abaef87958fdc (patch) | |
| tree | 58d282a899fbf13562d0a846351aa93115850a23 /userspace/ls.c | |
| parent | 1cb7a6bd1ab40188987feeaeefce021d441819e6 (diff) | |
implemented basic 'cd' in foolshell
Diffstat (limited to 'userspace/ls.c')
| -rw-r--r-- | userspace/ls.c | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/userspace/ls.c b/userspace/ls.c index 4cbcb6d..1cbb065 100644 --- a/userspace/ls.c +++ b/userspace/ls.c @@ -1,28 +1,30 @@ -#include "../fs/fs.h" +#include "fs/fs.h" void usage() { puts("ls [inode_nr]"); } + + int main(int argc, char **argv) { - char *dir; + fs_dirent *dirs=malloc(sizeof(fs_dirent)*25); + char *dir=getenv("PWD"); +// printf("PWD = %s\n",dir); - if(argc!=2) - { - dir=getenv("PWD"); - } - else + if(argc==2) { - if(argv[1][0]=="/")dir=argv[1]; - else + if(argv[1][0]!='/') { char buf[256]; - sprintf(buf,"%s/%s",getenv("PWD"),argv[1]); + sprintf(buf,"%s/%s",dir,argv[1]); dir=buf; - + } + else + { + dir=argv[1]; } } |
