mirror of
https://github.com/troglobit/finit.git
synced 2026-11-07 16:01:08 +00:00
initctl: add show command to cat foo.conf, default finit.conf
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
1 parent
9a24dfd98d
commit
d1efc60c84
3 files changed
+27
-1
No files matched your search
+7
-1
@@ -740,9 +740,14 @@ static int usage(int rc)
|
|||||||
" ls | list List all .conf in " FINIT_RCSD "\n"
|
" ls | list List all .conf in " FINIT_RCSD "\n"
|
||||||
" create <CONF> Create .conf in %s\n"
|
" create <CONF> Create .conf in %s\n"
|
||||||
" delete <CONF> Delete .conf in %s\n"
|
" delete <CONF> Delete .conf in %s\n"
|
||||||
|
" show <CONF> Show .conf in %s\n"
|
||||||
" edit <CONF> Edit .conf in %s\n"
|
" edit <CONF> Edit .conf in %s\n"
|
||||||
" touch <CONF> Change .conf in %s\n",
|
" touch <CONF> Change .conf in %s\n",
|
||||||
avail, avail, avail, avail);
|
avail, avail, avail, avail, avail);
|
||||||
|
else
|
||||||
|
fprintf(stderr,
|
||||||
|
" show Show %s\n", FINIT_CONF);
|
||||||
|
|
||||||
if (has_ena)
|
if (has_ena)
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
" enable <CONF> Enable .conf in %s\n", avail);
|
" enable <CONF> Enable .conf in %s\n", avail);
|
||||||
@@ -805,6 +810,7 @@ int main(int argc, char *argv[])
|
|||||||
{ "enable", serv_enable },
|
{ "enable", serv_enable },
|
||||||
{ "disable", serv_disable },
|
{ "disable", serv_disable },
|
||||||
{ "touch", serv_touch },
|
{ "touch", serv_touch },
|
||||||
|
{ "show", serv_show },
|
||||||
{ "edit", serv_edit },
|
{ "edit", serv_edit },
|
||||||
{ "create", serv_creat },
|
{ "create", serv_creat },
|
||||||
{ "delete", serv_delete },
|
{ "delete", serv_delete },
|
||||||
|
|||||||
+19
@@ -138,6 +138,11 @@ static char *conf(char *path, size_t len, char *name, int creat)
|
|||||||
{
|
{
|
||||||
char corr[40];
|
char corr[40];
|
||||||
|
|
||||||
|
if (!name || !name[0]) {
|
||||||
|
strlcpy(path, FINIT_CONF, len);
|
||||||
|
return path;
|
||||||
|
}
|
||||||
|
|
||||||
if (!strstr(name, ".conf")) {
|
if (!strstr(name, ".conf")) {
|
||||||
snprintf(corr, sizeof(corr), "%s.conf", name);
|
snprintf(corr, sizeof(corr), "%s.conf", name);
|
||||||
name = corr;
|
name = corr;
|
||||||
@@ -250,6 +255,20 @@ int serv_touch(char *arg)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int serv_show(char *arg)
|
||||||
|
{
|
||||||
|
char path[256];
|
||||||
|
char *fn;
|
||||||
|
|
||||||
|
fn = conf(path, sizeof(path), arg, creat);
|
||||||
|
if (!fexist(fn)) {
|
||||||
|
warnx("Cannot find %s", arg);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return systemf("cat %s", fn);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Try to open an editor for the given file, if creat is given we
|
* Try to open an editor for the given file, if creat is given we
|
||||||
* create a new file based on /lib/finit/sample.conf
|
* create a new file based on /lib/finit/sample.conf
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ int serv_list (char *arg);
|
|||||||
int serv_enable (char *arg);
|
int serv_enable (char *arg);
|
||||||
int serv_disable (char *arg);
|
int serv_disable (char *arg);
|
||||||
int serv_touch (char *arg);
|
int serv_touch (char *arg);
|
||||||
|
int serv_show (char *arg);
|
||||||
int serv_edit (char *arg);
|
int serv_edit (char *arg);
|
||||||
int serv_creat (char *arg);
|
int serv_creat (char *arg);
|
||||||
int serv_delete (char *arg);
|
int serv_delete (char *arg);
|
||||||
|
|||||||
Reference in new issue
Block a user