Переменные баша в команде

Я бы хотел, чтобы эта команда xrandr -s 640x480 использовала переменные вроде так

 #!/bin/bash display_x=640 display_y=480 xrandr -s $display_xx$display_y 

Команда работает неправильно. Как я могу это сделать?

2 Solutions collect form web for “Переменные баша в команде”

 #!/bin/bash display_x=640 display_y=480 xrandr -s ${display_x}x${display_y} 

Вы всегда должны помещать переменные оболочки в кавычки, если у вас нет веских оснований, и вы уверены, что знаете, что делаете. Поэтому ответ Deathgrip должен быть

 xrandr -s "${display_x}x${display_y}" 

и именно так я, вероятно, сделаю это. Но

 xrandr -s "$display_x"x"$display_y" 

также будет работать. Вот еще один подход:

 display_x=640 display_y=480 x=x xrandr -s "$display_x$x$display_y" 

– что угодно, чтобы сообщить оболочке, что вы не пытаетесь ссылаться на переменную с именем display_xx .

  • команды xrandr от gdm
  • Двойные мониторы с 2 видеодрайвером с xrandr 1.4
  • Ограничить GRUB на основной дисплей
  • Что делает параметр -size Xrandr?
  • Переключайте мониторы на ThinkPad W520, когда они состыкованы
  • Включение виртуальных выходов дисплея с помощью xrandr
  • xrandr очень медленно при смене с ноутбука на монитор
  • как использовать xrandr для зеркального отображения только части моего главного экрана?
  • Как сообщить xrandr, чтобы моя мышь перемещалась между мониторами?
  • Могу ли я масштабировать дисплей ноутбука HiDPI, оставив внешний дисплей без изменений?
  • Как добавить дополнительное разрешение для моего экрана?
  • Linux и Unix - лучшая ОС в мире.