diff --git a/Userland/Shell/Builtin.cpp b/Userland/Shell/Builtin.cpp index d3a48b5089..731710af43 100644 --- a/Userland/Shell/Builtin.cpp +++ b/Userland/Shell/Builtin.cpp @@ -40,6 +40,15 @@ extern char** environ; namespace Shell { +int Shell::builtin_dump(int argc, const char** argv) +{ + if (argc != 2) + return 1; + + Parser { argv[1] }.parse()->dump(0); + return 0; +} + int Shell::builtin_alias(int argc, const char** argv) { Vector arguments; diff --git a/Userland/Shell/Shell.h b/Userland/Shell/Shell.h index 3530d2e003..b86923e445 100644 --- a/Userland/Shell/Shell.h +++ b/Userland/Shell/Shell.h @@ -63,7 +63,8 @@ __ENUMERATE_SHELL_BUILTIN(disown) \ __ENUMERATE_SHELL_BUILTIN(fg) \ __ENUMERATE_SHELL_BUILTIN(bg) \ - __ENUMERATE_SHELL_BUILTIN(wait) + __ENUMERATE_SHELL_BUILTIN(wait) \ + __ENUMERATE_SHELL_BUILTIN(dump) #define ENUMERATE_SHELL_OPTIONS() \ __ENUMERATE_SHELL_OPTION(inline_exec_keep_empty_segments, false, "Keep empty segments in inline execute $(...)") \