
Eu tenho um problema com o Terminal Bash.
Meu problema com detalhes:
E sim, estou ciente de que você poderia fazer isso manualmente. Mas seria uma dor se cada usuário tivesse que fazer isso manualmente. Também tentei com "echo", mas não funcionou, como eu queria.
Eu também ficaria feliz se você pudesse me dizer como executar um arquivo bash com java. (Eu poderia descobrir sozinho.)
Basicamente, uma cor 0a para o terminal linux bash.
Se possível, sem a necessidade de nenhum software especial.
Talvez isso ajudasse. Eu não posso executá-lo embora.
PS1="\[\033[34m\][\$(date +%H%M)][\u@\h:\w]$ "
Consigo executar comandos "exec" no Terminal. No entanto, os comandos para cores etc. não funcionam, depois de um ping ou antes de um comando ping também. Obrigado por sua resposta!
Responder1
A solução para o meu problema é:
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
Primeiro você declara a cor acima. Então você escreve:
System.out.println(ANSI_RED + "hello World");
Então você executa seu programa e seu bem.
Originalmente de: https://stackoverflow.com/questions/5923436/change-color-of-java-console-output
saúde.
Responder2
Você pode executar um script de shell via Java com bastante facilidade:
Runtime.getRuntime().exec(myCommand);
Isso funcionará desde que o script de shell não seja interativo (e esteja em um caminho aplicável). As coisas ficam estranhas quando é interativo, e você teria que usar o Process Builder para isso.
Responder3
Acredito que isso deve funcionar (você também precisa escapar das sequências de escape - para que elas sejam executadas e o Java não as expanda):
p = Runtime.getRuntime().exec("/bin/bash -c 'echo -ne \"\\e[40m\\e[32m\"; ping " + b + "; echo -ne \"\\e[0m\"'");