Passe uma variável de string para um comentário em um script bash

Passe uma variável de string para um comentário em um script bash

Estou tentando passar uma variável de string dentro de um script bash, mas em um comentário no script.

Na linha de comando, pensei que poderia passar assim:

./script.sh specific_string_variable

E então, dentro do meu script bash, a linha de comentários seria atualizada assim:

#heres the comment line with this variable inserted: specific_string_variable

Isso é possível?

Desculpas se isso for óbvio, sou iniciante. Obrigado :)

Responder1

Você só precisa adicionar as seguintes linhas dentro do seu script:

echo "#heres the comment line with this variable inserted:" $1 >> script.sh

Explicação:

  • $1é sua variável de string; se você quiser usar uma frase, há duas maneiras:

    • usando barra invertida \como test\ magic\ beautiful( \digamoso espaço é um personagem)
    • usando aspas duplas "como "test magic beautiful"(dentro "", tudo é considerado como umpersonagem)
  • >>adicione o texto no final do seu script, enquanto um simples >apagaria seu script e escreveria o texto

  • o comentário deve estar entre aspas duplas"

Aqui está o script antes e depois da execução:

damadam@Pc:~$ cat script.sh 
echo "#heres the comment line with this variable inserted:" $1 >> script.sh
damadam@Pc:~$ ./script.sh test
damadam@Pc:~$ cat script.sh 
echo "#heres the comment line with this variable inserted:" $1 >> script.sh
#heres the comment line with this variable inserted: test

e com string de 2 palavras:

damadam@Pc:~$ ./script.sh test\ magic
damadam@Pc:~$ cat script.sh 
echo "#heres the comment line with this variable inserted:" $1 >> script.sh
#heres the comment line with this variable inserted: test
#heres the comment line with this variable inserted: test magic

informação relacionada