Cómo añadir automáticamente un módulo a /etc/modules si no existe

add_module_if_missing.sh
#!/bin/bash
check_module() {
  local module="$1"
  if grep -Fxq "$module" /etc/modules
  then
    echo "$module already exists in /etc/modules"
  else
    echo "$module not found in /etc/modules. Adding it now..."
    echo "$module" | sudo tee -a /etc/modules
  fi
}

check_module "i2c-dev"

Este script añadirá el módulo si aún no existe en /etc/modules.

Ten en cuenta que solo detectará si exactamente la misma línea que el argumento de check_module ya está presente en /etc/modules. Por ejemplo, si i2c-dev option1=value1 está en /etc/modules, el script solo detectará esta línea correctamente si lo llamas como

check_module_with_option.sh
check_module "i2c-dev option1=value1"

pero no si lo llamas como

check_module_simple.sh
check_module "i2c-dev"

Echa un vistazo a artículos similares por categoría: Linux