У меня есть следующий файл сценария, который выполняет основной класс Java и печатает некоторые данные журнала на терминале. Я хочу перенаправить все, что печатает эту программу на другой терминал (например,/dev/pts/1, но это не сработало для меня). Как это сделать ?перенаправляет выходы журнала на другой терминал
#!/bin/sh
# Usage: ./zipfs_mount.sh file.zip /mount/point
. ./build.conf
LD_LIBRARY_PATH=./jni:$FUSE_HOME/lib $JDK_HOME/bin/java \
-classpath ./build:./lib/commons-logging-1.0.4.jar \
-Dorg.apache.commons.logging.Log=fuse.logging.FuseLog \
-Dfuse.logging.level=DEBUG \
Main -f -s $2 $1 > /dev/pts/1
Я бы посоветовал, что, если это возможно, изменить программу Java, чтобы использовать надлежащие рамки протоколирования. Вход в stderr - это плохая практика ... Если это невозможно, вы можете перенаправить вывод в файл и 'tail -F', который ... Хотя вам нужно будет реализовать механизм для очистки файла со времени к времени, чтобы сделать ограничение на размер. – ppeterka