v_change_sys_config_value 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #!/bin/bash
  2. # info: changing sysconfig value
  3. #----------------------------------------------------------#
  4. # Variable&Function #
  5. #----------------------------------------------------------#
  6. # Argument defenition
  7. key=$(echo "$1" | tr '[:lower:]' '[:upper:]' )
  8. value=${2// /%spc%}
  9. # Importing variables
  10. source $VESTA/conf/vars.conf
  11. source $V_CONF/vesta.conf
  12. source $V_FUNC/shared.func
  13. #----------------------------------------------------------#
  14. # Verifications #
  15. #----------------------------------------------------------#
  16. # Checking args
  17. check_args '2' "$#" 'key value'
  18. # Checking argument format
  19. format_validation 'key'
  20. # Checking key existance
  21. check_ckey=$(grep "^$key='" $V_CONF/vesta.conf)
  22. if [ -z "$check_ckey" ]; then
  23. echo "Error: key not found"
  24. log_event 'debug' "$E_KEY_INVALID $V_EVENT"
  25. exit $E_KEY_INVALID
  26. fi
  27. #----------------------------------------------------------#
  28. # Action #
  29. #----------------------------------------------------------#
  30. # Updating conf
  31. sed -i "s/$key=.*/$key='$value'/g" $V_CONF/vesta.conf
  32. #----------------------------------------------------------#
  33. # Vesta #
  34. #----------------------------------------------------------#
  35. # Logging
  36. log_event 'system' "$V_EVENT"
  37. exit