Saída de um comando armazenado em uma variável

1

Estou criando um script de enumeração que tem uma lista de comandos a serem executados, como:

hostname
whoami
uid
etc...

Eu quero mostrar na tela o comando que está sendo executado, mas devido à expansão da variável, ele é substituído pelo comando real e o bash prossegue para executá-lo.

Portanto, o efeito desejado é ter uma linha no script, como:

echo Currently Running: [$cmd]

e faça isso ecoar na tela:

Currently Running [whoami]

NÃO

Currently running [root]

Como alguém escapa do comando, mas ainda consegue a expansão para o stdout?

    
por HashHazard 20.10.2017 / 01:47

1 resposta

0

Use a variável duas vezes:

tomas@tomas:~$ command=ls
tomas@tomas:~$ echo Currently Running: [$command] && $command
Currently Running: [ls]
cgoban.jar  Documents  Music     Public     Videos
Desktop     Downloads  Pictures  Templates
    
por 20.10.2017 / 02:58