mirror of
https://github.com/systemd/systemd.git
synced 2024-10-28 03:25:31 +03:00
systemctl: always disable color when output goes into a file
This commit is contained in:
parent
d8d5ab981a
commit
2cc59dbfe0
1
fixme
1
fixme
@ -39,7 +39,6 @@
|
|||||||
|
|
||||||
* In command lines, support both "$FOO" and $FOO
|
* In command lines, support both "$FOO" and $FOO
|
||||||
* /etc must always take precedence even if we follow symlinks!
|
* /etc must always take precedence even if we follow symlinks!
|
||||||
* color aus bei stdout auf !tty
|
|
||||||
|
|
||||||
* vielleicht implizit immer auf syslog dependen?
|
* vielleicht implizit immer auf syslog dependen?
|
||||||
|
|
||||||
|
@ -836,7 +836,7 @@ int main(int argc, char *argv[]) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
log_show_color(true);
|
log_show_color(isatty(STDERR_FILENO) > 0);
|
||||||
log_show_location(false);
|
log_show_location(false);
|
||||||
log_set_max_level(LOG_INFO);
|
log_set_max_level(LOG_INFO);
|
||||||
|
|
||||||
|
@ -86,6 +86,18 @@ static enum dot {
|
|||||||
|
|
||||||
static bool private_bus = false;
|
static bool private_bus = false;
|
||||||
|
|
||||||
|
static const char *ansi_highlight(bool b) {
|
||||||
|
static int t = -1;
|
||||||
|
|
||||||
|
if (_unlikely_(t < 0))
|
||||||
|
t = isatty(STDOUT_FILENO) > 0;
|
||||||
|
|
||||||
|
if (!t)
|
||||||
|
return "";
|
||||||
|
|
||||||
|
return b ? ANSI_HIGHLIGHT_ON : ANSI_HIGHLIGHT_OFF;
|
||||||
|
}
|
||||||
|
|
||||||
static bool error_is_no_service(DBusError *error) {
|
static bool error_is_no_service(DBusError *error) {
|
||||||
|
|
||||||
assert(error);
|
assert(error);
|
||||||
@ -226,7 +238,7 @@ static int list_units(DBusConnection *bus, char **args, unsigned n) {
|
|||||||
int a = 0, b = 0;
|
int a = 0, b = 0;
|
||||||
|
|
||||||
if (streq(active_state, "maintenance"))
|
if (streq(active_state, "maintenance"))
|
||||||
fputs(ANSI_HIGHLIGHT_ON, stdout);
|
fputs(ansi_highlight(true), stdout);
|
||||||
|
|
||||||
e = arg_full ? NULL : ellipsize(id, 45, 33);
|
e = arg_full ? NULL : ellipsize(id, 45, 33);
|
||||||
printf("%-45s %-6s %-12s %-12s%n", e ? e : id, load_state, active_state, sub_state, &a);
|
printf("%-45s %-6s %-12s %-12s%n", e ? e : id, load_state, active_state, sub_state, &a);
|
||||||
@ -245,7 +257,7 @@ static int list_units(DBusConnection *bus, char **args, unsigned n) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (streq(active_state, "maintenance"))
|
if (streq(active_state, "maintenance"))
|
||||||
fputs(ANSI_HIGHLIGHT_OFF, stdout);
|
fputs(ansi_highlight(false), stdout);
|
||||||
|
|
||||||
fputs("\n", stdout);
|
fputs("\n", stdout);
|
||||||
k++;
|
k++;
|
||||||
@ -1422,18 +1434,25 @@ static void print_status_info(UnitStatusInfo *i) {
|
|||||||
if (i->fragment_path)
|
if (i->fragment_path)
|
||||||
printf("\t Loaded: %s (%s)\n", strna(i->load_state), i->fragment_path);
|
printf("\t Loaded: %s (%s)\n", strna(i->load_state), i->fragment_path);
|
||||||
else if (streq_ptr(i->load_state, "failed"))
|
else if (streq_ptr(i->load_state, "failed"))
|
||||||
printf("\t Loaded: " ANSI_HIGHLIGHT_ON "%s" ANSI_HIGHLIGHT_OFF "\n", strna(i->load_state));
|
printf("\t Loaded: %s%s%s\n",
|
||||||
|
ansi_highlight(true),
|
||||||
|
strna(i->load_state),
|
||||||
|
ansi_highlight(false));
|
||||||
else
|
else
|
||||||
printf("\t Loaded: %s\n", strna(i->load_state));
|
printf("\t Loaded: %s\n", strna(i->load_state));
|
||||||
|
|
||||||
if (streq_ptr(i->active_state, "maintenance")) {
|
if (streq_ptr(i->active_state, "maintenance")) {
|
||||||
if (streq_ptr(i->active_state, i->sub_state))
|
if (streq_ptr(i->active_state, i->sub_state))
|
||||||
printf("\t Active: " ANSI_HIGHLIGHT_ON "%s" ANSI_HIGHLIGHT_OFF "\n",
|
printf("\t Active: %s%s%s\n",
|
||||||
strna(i->active_state));
|
ansi_highlight(true),
|
||||||
else
|
|
||||||
printf("\t Active: " ANSI_HIGHLIGHT_ON "%s (%s)" ANSI_HIGHLIGHT_OFF "\n",
|
|
||||||
strna(i->active_state),
|
strna(i->active_state),
|
||||||
strna(i->sub_state));
|
ansi_highlight(false));
|
||||||
|
else
|
||||||
|
printf("\t Active: %s%s (%s)%s\n",
|
||||||
|
ansi_highlight(true),
|
||||||
|
strna(i->active_state),
|
||||||
|
strna(i->sub_state),
|
||||||
|
ansi_highlight(false));
|
||||||
} else {
|
} else {
|
||||||
if (streq_ptr(i->active_state, i->sub_state))
|
if (streq_ptr(i->active_state, i->sub_state))
|
||||||
printf("\t Active: %s\n",
|
printf("\t Active: %s\n",
|
||||||
@ -1501,8 +1520,7 @@ static void print_status_info(UnitStatusInfo *i) {
|
|||||||
printf("status=%i", i->exit_status);
|
printf("status=%i", i->exit_status);
|
||||||
else
|
else
|
||||||
printf("signal=%s", signal_to_string(i->exit_status));
|
printf("signal=%s", signal_to_string(i->exit_status));
|
||||||
printf(")");
|
printf(")"); }
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (i->main_pid > 0 && i->control_pid > 0)
|
if (i->main_pid > 0 && i->control_pid > 0)
|
||||||
@ -1540,7 +1558,9 @@ static void print_status_info(UnitStatusInfo *i) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (i->need_daemon_reload)
|
if (i->need_daemon_reload)
|
||||||
printf("\n" ANSI_HIGHLIGHT_ON "Warning:" ANSI_HIGHLIGHT_OFF " Unit file changed on disk, 'systemctl %s daemon-reload' recommended.\n",
|
printf("\n%sWarning:%s Unit file changed on disk, 'systemctl %s daemon-reload' recommended.\n",
|
||||||
|
ansi_highlight(true),
|
||||||
|
ansi_highlight(false),
|
||||||
arg_session ? "--session" : "--system");
|
arg_session ? "--session" : "--system");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user