Ниже приведена команда, которая находит общие приемники pulseAudio:
pactl list short sinks
Вывод:
0 alsa_output.pci-0000_00_1b.0.hdmi-stereo module-alsa-card.c s16le 2ch 44100Hz RUNNING
1 alsa_output.usb-0d8c_C-Media_USB_Audio_Device-00-Device.analog-stereo module-alsa-card.c s16le 2ch 44100Hz RUNNING
3 bluez_sink.94_CE_2C_FA_8B_B1 module-bluetooth-device.c s16le 1ch 8000Hz IDLE
Поэтому я использую следующую команду для поиска конкретных приемников:
pactl list short sinks | grep "C-Media_USB_Audio_Device"
вывод:
1 alsa_output.usb-0d8c_C-Media_USB_Audio_Device-00-Device.analog-stereo module-alsa-card.c s16le 2ch 44100Hz RUNNING
Это печатает определенное имя приемника с индексом. Я хочу сохранить этот индекс 1 в переменной, чтобы использовать его в другой логике.
Я думаю, что это что Вы поиск,
$ var=$(pactl list short sinks | awk '$2=="alsa_output.usb-0d8c_C-Media_USB_Audio_Device-00-Device.analog-stereo" {print $1}')
$ echo $var
1