Перенаправить stdout из SBT в файл - программирование
Подтвердить что ты не робот

Перенаправить stdout из SBT в файл

Вдохновленный примерами на странице gitub SBT, я пытаюсь перенаправить stdout, созданный в результате запуска в интерактивном режиме SBT, в файл.

Здесь моя неудачная попытка:

> run #> file('/Users/dsg/temp/temp.txt') !

Я пробовал как с, так и без ! в конце. Я пробовал как одиночные, так и двойные кавычки. Ничего не работает - он просто ведет себя так, как будто #> file(... опускается, вещи только печатаются в stdout, файл не создается.

4b9b3361

Ответ 1

Я не эксперт SBT, но это не похоже на правильную функцию.

> run интерпретирует все после него как аргументы файла. #> похоже, является частью библиотеки sbt, для использования внутри ваших файлов проекта sbt, а не в их приглашении.

Обходя это, я выхожу из sbt и использую внешнюю оболочку для этого:

$ sbt "run" > run_output.txt

Ответ 2

Не знаю, как это сделать с консоли sbt, но из командной строки оболочки вы можете захватить вывод sbt через:

sbt "test" 2>&1 > test.log

Ответ 3

Вы можете попробовать это.

sbt test >> "log.txt"

Ответ 4

Это сработало для меня:

sbt | tee log.txt