variable run not found entorno bash shell javac

run - tratando de capturar salida javac en shell bash



variable path windows 10 (2)

Estoy intentando redirigir la salida del compilador de Java a un archivo. Pensé que se supone que es:

javac file.java > log.txt

o algo. En cambio, veo toda la salida en el terminal y nada en log.txt.

Además, si también quiero registrar errores, ¿lo hago?

javac file.java 2>&1 > log.txt

?


Has probado

javac -Xstdout log.txt file.java

Esto enviará errores de compilación a un archivo de registro en lugar de stderr.


javac file.java 2> log.txt

La razón es que tiene dos descriptores de archivos de salida en lugar de uno. El habitual es stdout, que puede redireccionar con> y se supone que debe utilizarse para la salida resultante. El segundo, stderr, es para lectura legible por humanos, como advertencias, errores, estado actual, etc., este se redirige con 2>.

Su segunda línea, usando 2> y 1, redirige stderr a stdout y finalmente stdout a log.txt.