Как мне записать в файл и распечатать на терминале одновременно в Unix? - PullRequest
2 голосов
/ 27 мая 2010

У меня есть небольшая функция bash для записи выходных данных Macports в файл (так как при установке часто появляются маленькие лакомые кусочки, которые легко потерять при шуме терминала), тогда я просто перевожу файл в терминал:

function porti {
    command sudo port install $@ >> $1.log 2>&1; cat $1.log
}

Есть ли способ сделать это одновременно?

Кстати Я передаю $ @ для установки, но только $ 1 для имени файла, чтобы я мог сделать что-то вроде:

porti git-gore +bash_completion

и получить только файл git-core.log однако кто-то другой может предпочесть включить варианты в имя файла ...

1 Ответ

8 голосов
/ 27 мая 2010

Обычное решение - использовать тройник (1) :

sudo port install $@ 2>&1 | tee -a $1.log

должен делать то, что вы хотите

...