Back to home page

LXR

 
 

    


File indexing completed on 2025-05-11 08:24:19

0001 /**
0002  * @file
0003  * 
0004  * @brief CHDIR Shell Command Implmentation
0005  */
0006 
0007 /*
0008  * Copyright (c) 2001 Fernando Ruiz Casas <fruizcasas@gmail.com>
0009  *
0010  *  The license and distribution terms for this file may be
0011  *  found in the file LICENSE in this distribution or at
0012  *  http://www.rtems.org/license/LICENSE.
0013  */
0014 
0015 #ifdef HAVE_CONFIG_H
0016 #include "config.h"
0017 #endif
0018 
0019 #include <stdio.h>
0020 #include <unistd.h>
0021 #include <string.h>
0022 #include <errno.h>
0023 
0024 #include <rtems.h>
0025 #include <rtems/shell.h>
0026 #include "internal.h"
0027 
0028 static int rtems_shell_main_chdir(
0029   int   argc,
0030   char *argv[]
0031 )
0032 {
0033   char *dir;
0034 
0035   dir = "/";
0036 
0037   if (argc > 1)
0038     dir = argv[1];
0039 
0040   if (chdir(dir)) {
0041     fprintf(stderr, "chdir to '%s' failed:%s\n", dir,strerror(errno));
0042     return errno;
0043   }
0044   return 0;
0045 }
0046 
0047 rtems_shell_cmd_t rtems_shell_CHDIR_Command = {
0048   "chdir",                                        /* name */
0049   "chdir [dir]  # change the current directory",  /* usage */
0050   "files",                                        /* topic */
0051   rtems_shell_main_chdir,                         /* command */
0052   NULL,                                           /* alias */
0053   NULL                                            /* next */
0054 };