O problema é como você pega o resultado do seu comando e coloca na sua variável $rotation :
Você deve substituir
rotation="xrandr -q --verbose|grep LVDS1|cut -b37-42"
com
rotation=$(xrandr -q --verbose|grep LVDS1|cut -b37-42)
ATUALIZAÇÃO: A explicação é que os diferentes citações expandem comandos e variáveis de maneiras diferentes:
-
aspas simples
'não expandem nada:TEST="hello world" echo '$TEST'irá produzir
$TEST
-
aspas duplas
"expandem as variáveis:TEST="hello world" echo "$TEST"irá produzir
hello world
-
E os backticks '' 'expandem os comandos:
TEST="pwd" echo '$TEST'irá produzir
/path/to/current/dir
Mas, para obter o resultado de um comando, você também pode usar $(myCmd) .