O que o comando “$ ()” faz no UNIX? [duplicado]

4

O que o comando $() faz no UNIX? Alguém poderia explicar qual é o significado de $ nos exemplos abaixo?

$(echo var=10)  

e

eval $(echo var=10)
    
por user46855 10.09.2013 / 19:22

1 resposta

4

Este não é um comando em si, e sim um exemplo de substituição de comandos . Leva o valor do que está entre parênteses e usa no contexto.

Por exemplo, freqüentemente faço um backup de um arquivo antes de editá-lo. Usarei a substituição de comando para adicionar a data ao final do nome do arquivo no formato ISO 8601 (para classificar.) Claro, eu poderia apenas digitar a data, mas isso é ótimo para scripts em que a data pode ser diferente sempre que for executada.

$ cp -p /path/to/file /path/to/file.$(date +%F)
$ ls /path/to/file.*
/path/to/file.2013-09-10 /path/to/file
    
por 10.09.2013 / 19:38