Skip to content

Commit 838141e

Browse files
committed
[finsh] Add echo command for msh.
1 parent 43f6813 commit 838141e

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

components/finsh/msh_cmd.c

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -252,6 +252,35 @@ int cmd_mkfs(int argc, char **argv)
252252
}
253253
FINSH_FUNCTION_EXPORT_ALIAS(cmd_mkfs, __cmd_mkfs, format disk with file system);
254254

255+
int cmd_echo(int argc, char** argv)
256+
{
257+
if (argc == 2)
258+
{
259+
rt_kprintf("%s\n", argv[1]);
260+
}
261+
else if (argc == 3)
262+
{
263+
int fd;
264+
265+
fd = open(argv[2], O_RDWR | O_APPEND | O_CREAT, 0);
266+
if (fd >= 0)
267+
{
268+
write (fd, argv[1], strlen(argv[1]));
269+
close(fd);
270+
}
271+
else
272+
{
273+
rt_kprintf("open file:%s failed!\n", argv[2]);
274+
}
275+
}
276+
else
277+
{
278+
rt_kprintf("Usage: echo \"string\" [filename]\n");
279+
}
280+
281+
return 0;
282+
}
283+
FINSH_FUNCTION_EXPORT_ALIAS(cmd_echo, __cmd_echo, echo string to file);
255284
#endif
256285

257286
#ifdef RT_USING_LWIP

0 commit comments

Comments
 (0)