У меня есть два случая, когда я хочу создать файл с его содержимым, поступающим на стандартный ввод:
- Мне нужно использовать
sudoчтобы иметь права на создание файла. - Приложение всегда вызывает (интерактивный) редактор, указанный в
$EDITORдля дальнейшей обработки этого ввода, но вместо этого я хочу передать данные из программы.
В первом случае я мог бы использовать echo test | sudo bash -c 'cat > test.txt' , но в этом, как и в последнем случае, я обычно использую tee и направляю стандартный вывод tee в /dev/null:
echo test | sudo tee test.txt > /dev/nullecho test | EDITOR=tee application > /dev/null
Однако это не только отбрасывает стандартный вывод tee , но и (в последнем случае) application . Было бы предпочтительно иметь возможность специально подавлять стандартный вывод tee , чтобы я мог сразу заметить, что что-то еще записывается в стандартный вывод.
Есть ли в стандартных дистрибутивах Linux утилита, которая записывает стандартный ввод в файл, указанный в качестве аргумента командной строки, и ничего не выводит?
