1

У меня проблема с терминалом Bash.

Моя проблема с деталями:

И да, я знаю, что вы могли бы сделать это вручную. Но было бы больно, если бы каждый пользователь делал это вручную. Я также попробовал это с "эхо", но это не сработало, как я хотел.

Я также был бы счастлив, если бы вы могли сказать мне, как запустить файл Bash с Java. (Я мог бы выяснить сам, хотя.)

В основном цвет 0a для терминала Linux Bash.

По возможности без какого-либо специального программного обеспечения.

Может быть, это поможет. Я не могу выполнить это все же.

PS1="\[\033[34m\][\$(date +%H%M)][\u@\h:\w]$ "

Я могу выполнить с "exec" командами в Терминале. Тем не менее, команды для цвета и т.д. не работают, после пинга или перед командой пинга тоже. Спасибо за ваш ответ!

3 ответа3

1

Решение моей проблемы:

public static final String ANSI_RESET = "\u001B[0m";

public static final String ANSI_BLACK = "\u001B[30m";

public static final String ANSI_RED = "\u001B[31m";

public static final String ANSI_GREEN = "\u001B[32m";

public static final String ANSI_YELLOW = "\u001B[33m";

public static final String ANSI_BLUE = "\u001B[34m";

public static final String ANSI_PURPLE = "\u001B[35m";

public static final String ANSI_CYAN = "\u001B[36m";

public static final String ANSI_WHITE = "\u001B[37m";

https://stackoverflow.com/questions/5923436/change-color-of-java-console-output

Сначала вы объявляете цвет выше. Затем вы пишете:

System.out.println(ANSI_RED + "hello World");

Тогда вы запускаете свою программу и все хорошо.

Первоначально из:https://stackoverflow.com/questions/5923436/change-color-of-java-console-output

веселит.

-1

Вы можете легко запустить скрипт оболочки через Java:

Runtime.getRuntime().exec(myCommand);

Это будет работать до тех пор, пока сценарий оболочки не является интерактивным (и находится в подходящем пути). Все становится странно, когда он интерактивный, и вам придется использовать Process Builder для этого.

-1

Я считаю, что это должно сработать (вам также нужно избегать escape-последовательностей - чтобы они проходили через, а java их не расширял):

 p = Runtime.getRuntime().exec("/bin/bash -c 'echo -ne \"\\e[40m\\e[32m\"; ping " + b + "; echo -ne \"\\e[0m\"'");

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .