J'avais l'habitude de faire nc (netcat) avec JAVA normalement

J'ai essayé d'insérer lz4 entre les deux pour augmenter la vitesse réelle de la ligne AIR de la zone A au bureau. Par conséquent, il était nécessaire de disposer d'un mécanisme d'envoi et de réception d'entrée / sortie standard via TCP. J'ai trouvé le meilleur outil en le recherchant nc (netcat) (Voir l'appareil http://www.intellilink.co.jp/sites/default/files/imported/article/column/sec-network01.png) Cependant, si vous le téléchargez dans la zone A, il sera lancé par Buster. Je ne peux pas l'ignorer et juste enregistrer que j'ai créé ce type avec JAVA.

PG:

ncJava.java


package ncjava;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;


public class ncJava {

	public static void main(String[] args) throws Exception{
		if (args.length!=2) {
			System.err.println(
					"USAGE: ncJava toSTD/toTCP TCPIP:PORT"
					);
			return;
		}
		if (args[0].toUpperCase().equals("TOSTD")) {
			//Server TCP to STDOUT
			ServerSocket ss = new ServerSocket(
					new Integer(args[1].replaceAll("^([^:]+):(.+)$", "$2")) //PortPart
					,0
					,InetAddress.getByName(args[1].replaceAll("^([^:]+):(.+)$", "$1")) //IPpart
					);
			Socket as = null;
			System.err.println("stby:"+ss+" to STDOUT");
			try {
			  while((as = ss.accept()) != null ) {
				System.err.println("recive from TCP:"+as);

				byte buf[] = new byte[1024];
				int r = 0;
				while ((r=as.getInputStream().read(buf))!=-1) {
					System.out.write(buf,0,r);
					System.out.flush();
				}
				System.err.println("disconnect TCP:"+as);
			  }
			} finally {if (ss != null) ss.close();}
			return;

		}else if (args[0].toUpperCase().equals("TOTCP")) {
			//Server STDIN to TCP
			Socket sc = new Socket(
					InetAddress.getByName(args[1].replaceAll("^([^:]+):(.+)$", "$1")) //IPpart
					,new Integer(args[1].replaceAll("^([^:]+):(.+)$", "$2")) //PortPart
					);
			System.err.println("stby to:"+sc+" from STDIN");
			try {
				byte buf[] = new byte[1024];
				int r = 0;
				while ((r=System.in.read(buf))!=-1) {
					System.err.println("recive from STDIN:"+r);
					sc.getOutputStream().write(buf,0,r);
					sc.getOutputStream().flush();
				}
				System.err.println("disconnect STDIN:");
			} finally {if (sc != null) sc.close();}
			return;
		}
	}
}

résultats de test: Expéditeur E:\MrServer>echo "testa" |java -jar ncJava.jar TOTCP localhost:9999 stby to:Socket[addr=localhost/127.0.0.1,port=9999,localport=54726] from STDIN recive from STDIN:10 disconnect STDIN:

E:\MrServer> Receveur E:\MrServer>java -jar ncJava.jar TOSTD localhost:9999 stby:ServerSocket[addr=localhost/127.0.0.1,port=0,localport=9999] to STDOUT recive from TCP:Socket[addr=/127.0.0.1,port=54726,localport=9999] "testa" disconnect TCP:Socket[addr=/127.0.0.1,port=54726,localport=9999]

Expéditeur E:\MrServer>type file.txt "engbJapan" "hhhhhhh"

E:\MrServer>java -jar ncJava.jar TOTCP localhost:9999 <file.txt stby to:Socket[addr=localhost/127.0.0.1,port=9999,localport=54728] from STDIN recive from STDIN:26 disconnect STDIN:

E:\MrServer> Receveur recive from TCP:Socket[addr=/127.0.0.1,port=54728,localport=9999] "engbJapan" "hhhhhhh" disconnect TCP:Socket[addr=/127.0.0.1,port=54728,localport=9999]

c'est tout.

Recommended Posts

J'avais l'habitude de faire nc (netcat) avec JAVA normalement
J'ai essayé de faire une authentification de base avec Java
J'ai essayé d'interagir avec Java
Je veux faire une liste avec kotlin et java!
Je veux créer une fonction avec kotlin et java!
J'ai essayé de créer une application Android avec MVC maintenant (Java)
Je l'ai fait en Java pour toujours rendre (a == 1 && a == 2 && a == 3) vrai
Je veux utiliser java8 forEach avec index
Je voulais que (a == 1 && a == 2 && a == 3) vrai en Java
J'ai essayé de casser le bloc avec java (1)
J'ai essayé d'implémenter TCP / IP + BIO avec JAVA
[Java 11] J'ai essayé d'exécuter Java sans compiler avec javac
J'ai essayé de créer une fonction de connexion avec Java
J'ai essayé d'implémenter Sterling Sort avec Java Collector
Je veux faire des transitions d'écran avec kotlin et java!
Java pour jouer avec Function
Java - Comment créer JTable
Connectez-vous à DB avec Java
Connectez-vous à MySQL 8 avec Java
J'ai essayé de créer un environnement de développement java8 avec Chocolatey
J'ai essayé de moderniser une application Java EE avec OpenShift.
[Débutant] Essayez de créer un jeu RPG simple avec Java ①
Je voulais juste créer une propriété réactive en Java
J'ai essayé de faire coexister Java Optional et la clause de garde
Même en Java, je veux afficher true avec un == 1 && a == 2 && a == 3
J'ai créé un client RESAS-API en Java
Je veux implémenter diverses fonctions avec kotlin et java!
[Java] Je souhaite tester l'entrée standard et la sortie standard avec JUnit
Facile à créer LINE BOT avec Java Servlet Partie 2: J'ai essayé des messages image et des modèles
Une histoire que j'ai eu du mal à défier le pro de la concurrence avec Java
Java pour apprendre avec les ramen [Partie 1]
Je veux créer un bouton avec un saut de ligne avec link_to [Note]
[Java] Points à noter avec Arrays.asList ()
Comment créer un conteneur Java
Je veux revenir à l'écran précédent avec kotlin et java!
Osez défier Kaggle avec Java (1)
J'ai essayé la communication UDP avec Java
Modèles de conception à utiliser avec les bibliothèques Java fréquemment utilisées - Modèle d'usine
Ce que j'ai appris avec Java Gold
Je voulais faciliter la programmation JavaFX avec Spring Framework
J'ai essayé de résumer l'apprentissage Java (1)
[Java] Je veux effectuer distinctement avec la clé dans l'objet
Java, des tableaux pour débuter avec les débutants
J'ai essayé de résumer Java 8 maintenant
Comment créer un tableau Java
J'ai essayé de créer une fonction de groupe (babillard) avec Rails
[Java] On a dit que Java pouvait concaténer des chaînes avec +, alors j'ai vérifié
Je veux afficher des images avec REST Controller de Java et Spring!
J'ai essayé de faire une sauvegarde automatique avec plus agréable + PostgreSQL + SSL + docker
Même en Java, je veux afficher true avec un == 1 && a == 2 && a == 3 (édition PowerMockito)
[iOS] J'ai essayé de créer une application de traitement de type insta avec Swift
Je souhaite créer un SNS Web sombre avec Jakarta EE 8 avec Java 11
J'ai utilisé Docker pour solidifier le modèle à développer avec Spring Boot.
[Java] Je veux faciliter les choses car il est difficile d'entrer System.out.println
J'ai essayé de créer une application de conversation en Java à l'aide de l'IA «A3RT»
Je veux ForEach un tableau avec une expression Lambda en Java
Comment créer une application avec un mécanisme de plug-in [C # et Java]
Interface Essayez de créer un problème Java TypeScript 7-3
Comment créer un résumé de calendrier Java
J'ai essayé de résumer les méthodes utilisées