Ich bin so weit gekommen (von .bashrc
):
alias i="amixer -c 0 -- sset Master playback +1dB"
alias d="amixer -c 0 -- sset Master playback -1dB"
alias v4="amixer -c 0 -- sset Master playback 40%"
alias v8="amixer -c 0 -- sset Master playback 80%"
Die ersten beiden Zeilen sollten funktionieren, wenn ich die man amixer
Seite richtig lese, und sie erzeugen keine Fehlermeldung, aber ihr Verhalten ist unzuverlässig: Manchmal gibt es eine große Änderung, meistens passiert nichts.
Die letzten beiden Zeilen funktionieren. Ich schätze, Sie könnten etwa zehn Aliase erstellen. Trotzdem möchten Sie, dass die Funktion zum Erhöhen/Verringern an Tastaturkürzel gebunden wird.
Benutze ich amixer
es falsch oder gibt es ein anderes Tool, mit dem sich der Trick bewerkstelligen lässt? ( alsamixer
scheint diese Funktionalität als CLI-Befehle nicht zu haben.)
Bearbeiten
Endlich hat es geklappt. Das ist so lange her (wie traurig!), dass ich den Überblick darüber verloren habe, wer was beigetragen hat. Trotzdem danke. (Unten: Für Bash-Benutzer geben Sie ein .bashrc
)
# volume
alias vol="alsamixer"
MASTER="amixer -q -c 0 sset Master playback"
alias i="$MASTER 2dB+"
alias d="$MASTER 2dB-"
alias mute="echo \" Audio muted.\"; $MASTER mute"
alias play="echo \" Audio un-muted.\"; $MASTER unmute"
alias unmute="play"
alias stop="mute"
v () {
amixer -q sset Master playback $1%
}
Antwort1
Für Ihre ersten beiden Aliase scheint das +/- weg sein zu müssennachder Wert soll als relative Änderung behandelt werden, statt als absoluter Wert(Manpage von amixer):
alias i="amixer -c 0 -- sset Master playback +1db+"
alias d="amixer -c 0 -- sset Master playback +1db-"
Ich würde die letzten beiden (und ihre 8 angenommenen Brüder) durch eine einzige Shell-Funktion ersetzen:
v () {
amixer -c 0 -- sset Master playback $i%
}