Поскольку команда все еще работает на экране, его родительская Bash не перечитает никакой истории, так как:
^ z
, затем ART AROW
^ a ^ A
- потому что экран (1) - и ^ E
) и ECHO + перенаправляют в файл FG
Чтобы преследовать командование казни , есть предостережения, но это достаточно полезно, большую часть времени.
После долгих поисков я нашел ответ на свой вопрос. Вам необходимо соответствующим образом настроить ALSA, и он предоставит новое устройство, которое будет дублировать звук, посылаемый на него на два или более устройств, таких как звуковые карты и устройство с обратной связью по шлейфу.
Здесь файл .asoundrc, который я использую:
# If you want this to be the default, then you
# need to override the default device and provide
# a playback path to the CardAndLoop and a capture
# path to whatever soundcard you have (here the 1st card)
#pcm.!default {
# type asym
# playback.pcm "CardAndLoop"
# capture.pcm "hw:0,0"
#}
# This is the interface you use for sound output
# It will send the output to the soundcard and loopback device
pcm.CardAndLoop {
type plug
slave.pcm MultiCh
route_policy "duplicate"
}
# Virtual multichannel device with four channels
# two the for the soundcard, two for the loopback
pcm.MultiCh {
type multi
slaves.a.pcm pcm.MixCard
slaves.a.channels 2
slaves.b.pcm pcm.MixLoopback
slaves.b.channels 2
bindings.0.slave a
bindings.0.channel 0
bindings.1.slave a
bindings.1.channel 1
bindings.2.slave b
bindings.2.channel 0
bindings.3.slave b
bindings.3.channel 1
}
# Mixer for the soundcard
pcm.MixCard {
type dmix
ipc_key 1024
slave {
# pcm "hw:Conectiv,0"
pcm "hw:PCH,0"
# rate 48000
rate 44100
periods 128
period_time 0
period_size 1024 # must be power of 2
buffer_size 8192
}
}
# Mixer for the loopback
pcm.MixLoopback {
type dmix
ipc_key 1025
slave {
pcm "hw:Loopback,0"
# rate 48000
rate 44100
periods 128
period_time 0
period_size 1024 # must be power of 2
buffer_size 8192
}
}
Этот файл предоставит новое ALSA звуковое устройство 'CardAndLoop'. Если вы выберете это устройство в вашем звуковом приложении, звук будет отправлен на звуковую карту 'PCH' и устройство обратной связи. Вы можете запустить второе приложение и использовать в качестве входа устройство обратной связи, и оно получит звук, воспроизводимый 1-м приложением.
Я использовал имена для обозначения звуковых устройств. Эти имена можно взять из файла /proc/asound/cards:
$ cat /proc/asound/cards
0 [PCH ]: HDA-Intel - HDA Intel PCH
HDA Intel PCH at 0xf5330000 irq 44
2 [Loopback ]: Loopback - Loopback
Loopback 1
Развлекайтесь!