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
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?
Tags shell-script