O que os argumentos printf de Ruby significam?

Alguém por favor pode me ajudar a entender a seguinte expressão?

printf("%3d - %s\n", counter, name)

Essa linha imprime algo como isto6 - Install Adobe software

Eu procurei informações e li a referência, mas não consigo encontrar uma resposta simples e estou um pouco confuso. Se você puder me indicar uma boa referência, faça isso.

%3d Ok, de acordo com o que eu pude entender%3d é o número de caracteres ou espaços. Por favor me aponte para uma referência que explica isso.

%s\n Eu não consegui descobrir o que isso faz. eu acho\n é uma nova linha ou algo semelhante, mas olhando para a saída, não parece funcionar assim.

Por que sãocounter ename variáveis ​​separadas por vírgulas?

Ao olhar para a saída é parece que%3d é meio que substituído porcounter e%s\n é substituído porname. Não sei como funciona, mas gostaria de entender.

questionAnswers(1)

yourAnswerToTheQuestion