Added "cat" command.
This commit is contained in:
parent
94406b6c35
commit
b1c50bba8b
|
@ -326,6 +326,38 @@ static int cmd_issymlink(char *args)
|
||||||
} /* cmd_issymlink */
|
} /* cmd_issymlink */
|
||||||
|
|
||||||
|
|
||||||
|
static int cmd_cat(char *args)
|
||||||
|
{
|
||||||
|
PHYSFS_file *f = PHYSFS_openRead(args);
|
||||||
|
if (f == NULL)
|
||||||
|
printf("failed to open. Reason: [%s].\n", PHYSFS_getLastError());
|
||||||
|
else
|
||||||
|
{
|
||||||
|
while (1)
|
||||||
|
{
|
||||||
|
char buffer[128];
|
||||||
|
int rc;
|
||||||
|
int i;
|
||||||
|
rc = PHYSFS_read(f, buffer, 1, sizeof (buffer));
|
||||||
|
|
||||||
|
for (i = 0; i < rc; i++)
|
||||||
|
fputc((int) buffer[i], stdout);
|
||||||
|
|
||||||
|
if (rc < sizeof (buffer))
|
||||||
|
{
|
||||||
|
printf("\n\n");
|
||||||
|
if (!PHYSFS_eof(f))
|
||||||
|
printf("\n (Error condition in reading.)\n\n");
|
||||||
|
PHYSFS_close(f);
|
||||||
|
return(1);
|
||||||
|
} /* if */
|
||||||
|
} /* while */
|
||||||
|
} /* else */
|
||||||
|
|
||||||
|
return(1);
|
||||||
|
} /* cmd_cat */
|
||||||
|
|
||||||
|
|
||||||
/* must have spaces trimmed prior to this call. */
|
/* must have spaces trimmed prior to this call. */
|
||||||
static int count_args(const char *str)
|
static int count_args(const char *str)
|
||||||
{
|
{
|
||||||
|
@ -381,6 +413,7 @@ static const command_info commands[] =
|
||||||
{ "exists", cmd_exists, 1, "<fileToCheck>" },
|
{ "exists", cmd_exists, 1, "<fileToCheck>" },
|
||||||
{ "isdir", cmd_isdir, 1, "<fileToCheck>" },
|
{ "isdir", cmd_isdir, 1, "<fileToCheck>" },
|
||||||
{ "issymlink", cmd_issymlink, 1, "<fileToCheck>" },
|
{ "issymlink", cmd_issymlink, 1, "<fileToCheck>" },
|
||||||
|
{ "cat", cmd_cat, 1, "<fileToCat>" },
|
||||||
{ NULL, NULL, -1, NULL }
|
{ NULL, NULL, -1, NULL }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue