mirror of
https://github.com/firewalkwithm3/Sensor-Watch.git
synced 2024-11-22 11:10:29 +08:00
add a format command
This commit is contained in:
parent
e732afbec6
commit
7000d08ba5
|
@ -127,6 +127,22 @@ bool filesystem_init(void) {
|
||||||
return err == LFS_ERR_OK;
|
return err == LFS_ERR_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int _filesystem_format(void);
|
||||||
|
int _filesystem_format(void) {
|
||||||
|
int err = lfs_unmount(&lfs);
|
||||||
|
if (err < 0) {
|
||||||
|
printf("Couldn't unmount - continuing to format, but you should reboot afterwards!\r\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
err = lfs_format(&lfs, &cfg);
|
||||||
|
if (err < 0) return err;
|
||||||
|
|
||||||
|
err = lfs_mount(&lfs, &cfg);
|
||||||
|
if (err < 0) return err;
|
||||||
|
printf("Filesystem re-mounted with %ld bytes free.\r\n", filesystem_get_free_space());
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
bool filesystem_file_exists(char *filename) {
|
bool filesystem_file_exists(char *filename) {
|
||||||
info.type = 0;
|
info.type = 0;
|
||||||
lfs_stat(&lfs, filename, &info);
|
lfs_stat(&lfs, filename, &info);
|
||||||
|
@ -251,6 +267,15 @@ int filesystem_cmd_rm(int argc, char *argv[]) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int filesystem_cmd_format(int argc, char *argv[]) {
|
||||||
|
(void) argc;
|
||||||
|
if(strcmp(argv[1], "YES") == 0) {
|
||||||
|
return _filesystem_format();
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
int filesystem_cmd_echo(int argc, char *argv[]) {
|
int filesystem_cmd_echo(int argc, char *argv[]) {
|
||||||
(void) argc;
|
(void) argc;
|
||||||
|
|
||||||
|
@ -279,4 +304,3 @@ int filesystem_cmd_echo(int argc, char *argv[]) {
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -100,6 +100,7 @@ int filesystem_cmd_ls(int argc, char *argv[]);
|
||||||
int filesystem_cmd_cat(int argc, char *argv[]);
|
int filesystem_cmd_cat(int argc, char *argv[]);
|
||||||
int filesystem_cmd_df(int argc, char *argv[]);
|
int filesystem_cmd_df(int argc, char *argv[]);
|
||||||
int filesystem_cmd_rm(int argc, char *argv[]);
|
int filesystem_cmd_rm(int argc, char *argv[]);
|
||||||
|
int filesystem_cmd_format(int argc, char *argv[]);
|
||||||
int filesystem_cmd_echo(int argc, char *argv[]);
|
int filesystem_cmd_echo(int argc, char *argv[]);
|
||||||
|
|
||||||
#endif // FILESYSTEM_H_
|
#endif // FILESYSTEM_H_
|
||||||
|
|
|
@ -85,6 +85,13 @@ shell_command_t g_shell_commands[] = {
|
||||||
.max_args = 1,
|
.max_args = 1,
|
||||||
.cb = filesystem_cmd_rm,
|
.cb = filesystem_cmd_rm,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
.name = "format",
|
||||||
|
.help = "usage: format YES",
|
||||||
|
.min_args = 1,
|
||||||
|
.max_args = 1,
|
||||||
|
.cb = filesystem_cmd_format,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
.name = "echo",
|
.name = "echo",
|
||||||
.help = "usage: echo TEXT {>,>>} FILE",
|
.help = "usage: echo TEXT {>,>>} FILE",
|
||||||
|
@ -109,7 +116,7 @@ static int help_cmd(int argc, char *argv[]) {
|
||||||
|
|
||||||
printf("Command List:\r\n");
|
printf("Command List:\r\n");
|
||||||
for (size_t i = 0; i < g_num_shell_commands; i++) {
|
for (size_t i = 0; i < g_num_shell_commands; i++) {
|
||||||
printf(" %s\t%s\r\n",
|
printf(" %s\t%s\r\n",
|
||||||
g_shell_commands[i].name,
|
g_shell_commands[i].name,
|
||||||
(g_shell_commands[i].help) ? g_shell_commands[i].help : ""
|
(g_shell_commands[i].help) ? g_shell_commands[i].help : ""
|
||||||
);
|
);
|
||||||
|
@ -156,4 +163,3 @@ static int stress_cmd(int argc, char *argv[]) {
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue