我需要在 bash 脚本中设置系统卷,但我不知道该怎么做。我应该使用alsactl
吗?是否有一些值/proc
或/sys
我可以使用的值?
问问题
4671 次
3 回答
4
您应该使用amixer工具。
不带参数运行amixer
以获取混音器控件列表。
使用如下命令:
amixer set Master 50% # set absolute
amixer set Master 2dB+ # set relative
amixer set Master unmute
于 2013-10-04T07:03:19.733 回答
2
您也可以使用pactl
.
pactl set-sink-volume 0 60% # set absolute
pactl set-sink-volume 0 +10% # set relative
pactl set-sink-mute 0 0 # unmute
特别是,pactl set-sink-mute 0 0
取消静音命令适用于我的计算机,而我的计算机amixer set Master unmute
却没有。
于 2014-10-14T20:15:43.617 回答
0
我的 ~/bin 中有一个不错的 vol 脚本来帮助我解决问题...
#!/bin/sh
export XDIALOG_NO_GMSGS=1
case ${1} in
+|-) VOL=( $(amixer set Master 10dB${1} |tail -1|tr -d "[]") )
Xdialog --no-buttons --title "Vol" --infobox ${VOL[3]} 50x30+32+32 ;;
*[0-9]) VOL=( $(amixer set Master "${1}%" |tail -1|tr -d "[]") )
Xdialog --no-buttons --title "Vol" --infobox ${VOL[3]} 50x30+32+32 ;;
*) printf "Usage: vol [+]|[-]|[0-100]\n" >&2 ;;
esac
如果你没有安装 Xdialog,一个简单的 echo ${VOL[3]} 会给你一些 alsamixer 反馈。
于 2019-03-29T09:37:08.843 回答