Alterando o volume na linha de comando usando script / função


0

Eu encontrei este comando bacana que define o volume para 50% (ou qualquer nível desejado):

osascript -e 'set volume output volume 50'

Eu adoraria ter um script ou função que me permita digitar v 50ou v 30etc. para alterar facilmente os níveis de volume.

Eu tentei fazer esta função bash:

v() {
# adjust volume function
osascript -e 'set volume output volume $1'
}

No entanto, isso fornece:

25:26: syntax error: Expected expression but found unknown token. (-2741)

Como posso fazer isso funcionar?


Como uma nota lateral: para silenciar o volume, useosascript -e 'set volume output muted true'
Asmus

Respostas:


3

As aspas simples ('') suprimem a expansão dos parâmetros para que você precise usar aspas duplas:

v() {
    osascript -e "set volume output $1"
}

Excelente - isso funciona, obrigado. De maneira mais geral - quando se deve usar aspas duplas versus aspas simples?
31515 Chegada

11
Aspas simples proteger tudo dentro, então use aspas duplas sempre que você precisa para expandir variáveis etc.
nohillside
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.