Git – printf URL remota por parámetro en la console

Estoy tratando de escribir un script BASH que printf la URL de un git remote en la console, y el control remoto corresponde a un parámetro de la function.

 print-remote() { printf "Remote Url: $(git config --get remote.$1.url)" } 

Y lo llamaría así:

 print-remote origin 

y debe imprimir

 Remote Url: git@github.io:User/repository.git 

Pero esto no está recogiendo mi $1 , y estoy volviendo

 Remote Url: 

Siento que me falta algo de syntax.

Intenta cambiar tu function a:

 print-remote() { printf "Remote Url: %s\n" "$(git config --get remote."$1".url)" } 

La razón es que si la salida de git tiene un % caracteres u otros caracteres especiales de printf , printf intentará usarlos como parámetro de formatting.

O simplemente usa echo :

 print-remote() { echo "Remote Url: $(git config --get remote."$1".url)" }