Причина 2>&1 | tee
должен смочь получить и stdout и stderr к файлу журнала и видеть его на экране одновременно. Это могло быть сделано как >output.txt 2>&1 & tail -f
также, но Вы не знали бы, когда фоновая завершенная команда - является завершенной программой или является ею работающий без вывода. 2>&1 | tee
была общая идиома для программистов.
Можно использовать правила udev. Для этого необходимо будет найти атрибуты устройств, которые отличают гарнитуру USB, после того как она включается. Это может обычно делаться на двух шагах:
Выполненный udevadm monitor --udev
прежде, чем включить устройство. Затем включите его. Будет набор выходных строк - просто выбирают один и копируют путь устройства с него - это - что-то как /devices/pci0000:00/0000:00:1d.7/usb1/1-5/1-5:1.0
.
С гарнитурой, все еще подключенной, использовать udevadm info --path=/your/device/path --attribute-walk
найти некоторые атрибуты, которые отличают Ваше устройство от других (как ATTR{idVendor}
и ATTR{idProduct}
).
Когда у Вас есть это, можно создать правило udev, которое будет инициировано при подключении устройства. Посмотрите на файлы под /etc/udev/rules.d/
поскольку, как они похожи. Тот, который Вы будете, вероятно, создавать, закончится RUN+="some command"
. Обратите внимание что идентификаторы (SUBSYSTEM=
, ATTRS=
и т.д.), используемый в такой строке должен все прибыть из описания того же устройства - тот же блок udevadm info --attribute-walk
вывод.
Вторая часть задачи должна найти amixer
настройки, который удовлетворяет Вашим потребностям в каждом сценарии и переносит их в команду, что Вы вставите RUN+=
часть правила udev. С этим я не могу помочь Вам, поскольку у меня нет подобных аппаратных средств.
Если у Вас еще нет его, pulseaudio
даст Вам этот вид гибкости в действительно простой в использовании названной консоли маршрутизации pavucontrol
. Предпочтительные устройства и устройства нейтрализации могут быть установлены на приложение и системные значения по умолчанию.
Я просто купил гарнитуру Plantronics и имел ту же проблему, она была решена следующим http://alsa.opensrc.org/MultipleCards:
Отредактированный /etc/modprobe.d/50-alsa.conf
файл для устанавливания порядка по умолчанию:
options snd slots=snd-usb-audio,snd-hda-intel
Я также удалил все другие связанные конфигурации, а именно, /etc/modprobe.d/50-sound*
.
Я проверил плагин/неплагин гарнитура и рассмотрение вывода aplay -l
Это использовало openSUSE 12.2 и Plantronics.Audio 655.
Как упоминал Калеб, PulseAudio позволяет вам мигрировать потоки с одного устройства на другое.
Для автоматического переключения, а не ручного через pavucontrol
, добавьте модуль модуль-switch-on-connect
в вашу конфигурацию PulseAudio, как описано здесь:
https://askubuntu. com/questions/158241/automatically-change-sound-input-output-device/158250#158250