Programmation de terminal bash Linux

1

J'ai un problème avec le terminal Bash.

Mon problème avec les détails:

Et oui, je suis conscient que vous pourriez le faire manuellement. Mais ce serait pénible si chaque utilisateur devait le faire à la main. J'ai aussi essayé avec "echo", mais cela n'a pas fonctionné, comme je le voulais.

Je serais également heureux, si vous pouviez me dire, comment exécuter un fichier bash avec java. (Je pourrais comprendre par moi-même si.)

Fondamentalement, une couleur 0a pour le terminal linux bash.

Si possible, sans aucun logiciel spécial nécessaire.

Peut-être que cela aiderait. Je ne peux pas l'exécuter si.

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

Je suis capable d'exécuter avec des commandes "exec" dans le terminal. Pourtant, les commandes pour la couleur, etc. ne fonctionne pas, après un ping ou avant une commande ping aussi. Merci pour votre réponse!

HelpMeWithLinux
la source

Réponses:

1

La solution à mon problème est la suivante:

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

D'abord, vous déclarez la couleur ci-dessus. Ensuite, vous écrivez:

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

Ensuite, vous lancez votre programme et votre bien.

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

à votre santé.

HelpMeWithLinux
la source
-1

Vous pouvez facilement exécuter un script shell via Java:

Runtime.getRuntime().exec(myCommand);

Cela fonctionnera tant que le script shell n’est pas interactif (et dans un chemin applicable). Les choses deviennent bizarres quand c'est interactif, et vous devriez utiliser Process Builder pour cela.

Spouleur
la source
Je suis capable de le faire, mais pas le changement de couleur. Une personne m'a recommandé qu'un fichier séparé serait préférable.
HelpMeWithLinux
-1

Je crois que cela devrait fonctionner (vous devez également échapper aux séquences d'échappement - pour qu'elles soient exécutées et que Java ne les développe pas):

 p = Runtime.getRuntime().exec("/bin/bash -c 'echo -ne \"\\e[40m\\e[32m\"; ping " + b + "; echo -ne \"\\e[0m\"'");
Marek Rost
la source
5 erreurs de compilation ont été
manquées
J'ai eu quelques erreurs avec des citations avec elle avant
Marek Rost
Je suis supposé, pour mettre cela dans mon code Java correct?
HelpMeWithLinux
oui - aussi ne pas oublier que le comportement par défaut de ping est de continuer pour toujours - il pourrait être une bonne idée d'ajouter le paramètre -c <number>à elle
Marek Rost
Oh! droit merci. (Il ne compile pas cependant)
HelpMeWithLinux