AWS executa um userdata quando a instância ec2 é criada, mas gera um erro para colchetes duplos e dólares duplos

AWS executa um userdata quando a instância ec2 é criada, mas gera um erro para colchetes duplos e dólares duplos

Estou enfrentando um problema fundamental com colchetes duplos e cifrões duplos em instâncias EC2 Linux quando o script de inicialização é executado pelo grupo de escalonamento automático da AWS.

abaixo está o erro:

-bash: syntax error near unexpected token `('

abaixo está o código

#!/bin/bash

total_ram=`free -g | awk 'FNR > 1 && FNR < 3 {print $2}'`
# if it's an odd value add one
if [ $$((total_ram%2)) -ne 0 ]; then total_ram=$$((total_ram+1)) ; fi
# divide by two
#  half_ram=$((total_ram / 2))

sed "s,Xms.*,Xms$$((half_ram+0))g,g" -i /Users/rrapolu/ProjectDocs/shell/jvm.options
sed "s,Xmx.*,Xmx$$((half_ram+0))g,g" -i /Users/rrapolu/ProjectDocs/shell/jvm.options


informação relacionada