Use o texto de saída de um comando como nome de arquivo

Use o texto de saída de um comando como nome de arquivo

curl http://v6.ipv6-test.com/api/myip.phpme retorna meu endereço IPv6 atual.

Gostaria de usar essa string como parte de um nome de arquivo a ser criado, seguido pelo carimbo de data e hora de quando o script foi executado.

Alguma ideia de como isso poderia ser feito?

Responder1

Para usar o resultado de uma string como uma variável, use a $(command)construção (também conhecida comosubstituição de comando):

whatevercommand >$(curl http://v6.ipv6-test.com/api/myip.php)-$(date '+%F@%T')

Porém, neste caso específico, isso é um pouco perigoso, pois em caso de problemas de rede você pode obter algo inesperado, por isso é melhor obter o endereço separadamente:

myip=$(curl http://v6.ipv6-test.com/api/myip.php)
[[ $? -ne 0 ]] && exit 1
whatevercommand >$myip-$(date '+%F@%T')

Na prática, você pode obter seu endereço IPV6 usando ip address show.

informação relacionada