Isso não é uma expansão de brace. Isso é só ... um asterisco dentro de chaves. Você precisará usar um loop for para isso.
for user in *
do
cp "$user"/.ssh/authorized_keys /tmp/key_for_"$user"
done
Digamos que eu queira copiar o arquivo .ssh/authorized_keys
no diretório /home
de cada usuário para /tmp
(por qualquer motivo). Imaginei que poderia usar a expansão globbing e brace para fazer isso rapidamente, mas tive problemas. Eu tentei usar algo como key_for_{*}
para obter um nome de arquivo diferente para cada usuário. Meu pensamento era que eu poderia copiar tudo assim,
sudo cp */.ssh/authorized_keys /tmp/key_for_{*}
Eu esperava que /tmp
tivesse arquivos como /tmp/key_for_alice
, /tmp/key_for_james
, & c ... mas não foi isso que aconteceu.
Pesquisando, encontrei vários exemplos de expansão de chaves, mas nenhum que abordasse essa questão. Há algo que eu deveria saber?
Obrigado!