O bash
shell expande parâmetros não definidos para a string vazia por padrão. No entanto, não consigo encontrar documentação oficial afirmando isso em lugar nenhum. É?
Stanley Yu's questions
Qual é o significado do padrão bash [...] & wait $!
? Por exemplo:
curl -LsS $AZP_AGENT_PACKAGE_LATEST_URL | tar -xz & wait $!
Eu entendo isso como:
- O
&
instrui o bash a executar o pipeline anterior em um subshell em segundo plano. - O
wait $!
então espera que o pipeline termine antes de retornar.
Mas se for esse o caso, qual é a diferença de apenas executar o pipeline em si? Qual é o ponto?
O script que contém este exemplo (e algumas outras instâncias) pode ser encontrado em:
https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/docker?view=azure-devops
Eu tenho um sistema em que o SSH ainda pede a senha, embora:
- Minha chave pública está corretamente no
authorized_keys
arquivo no servidor remoto. - Minha chave privada é armazenada como
id_rsa
no meu.ssh
diretório. - As permissões no cliente local e no servidor remoto estão corretas. Isso inclui os diretórios pessoais, os
.ssh
diretórios, oauthorized_keys
arquivo e os próprios arquivos de chave. - O SELinux está desabilitado no cliente e no servidor.
Além disso, /var/log/secure
no servidor relata o seguinte erro em cada tentativa de login:
sshd[17110]: error: Could not get shadow information for <USER>
onde substituí o nome de usuário real pela string <USER>
.
Qual poderia ser a causa disso e/ou como faço para que minhas chaves SSH funcionem?
Existe uma maneira de ler e processar caracteres de controle como ^M
e mostrar apenas a saída final? Por exemplo, tenho a seguinte string:
track^Mfl^Ms
Eu gostaria de convertê-lo para:
slack
Como eu poderia fazer isso?