#ifndef DEF_KERNELSHELL_CLASS_H #define DEF_KERNELSHELL_CLASS_H #include #include #include #include class KernelShell { friend u32int shellRun(void* ks); private: VirtualTerminal *m_vt; DirectoryNode *m_cwd; Thread* m_thread; static u32int m_instances; ~KernelShell(); u32int run(); //in KernelShell-fs void ls(Vector& args); void cd(Vector& args); void pwd(Vector& args); void cat(Vector& args); void mkdir(Vector& args); void rm(Vector& args); void wf(Vector& args); //in KernelShell-sys void devices(Vector& args); void loadkeys(Vector& args); void free(Vector& args); void uptime(Vector& args); void part(Vector& args); void setup(DirectoryNode* cwd, VirtualTerminal *vt); public: KernelShell(DirectoryNode* cwd, VirtualTerminal *vt); KernelShell(DirectoryNode* cwd); static u32int getInstances() { return m_instances; } }; #endif