4 votes

Comment ajouter un indicateur à un alias ?

Est-il possible d'ajouter un indicateur à un bash alias que vous créez vous-même ? par ex.

con -a = 'ssh username@server1.domain.com'
con -b = 'ssh username@server2.domain.com'

7voto

glenn jackman Points 1869

Ou bien, utilisez une fonction au lieu d'un alias :

con() {
  local OPTIND svr
  while getopts ":ab" option; do
    case $option in
      a) svr=server1 ;;
      b) svr=server2 ;;
      ?) echo "invalid option: $OPTARG"; return 1 ;;
    esac
  done
  ssh username@${svr}.domain.com
}

con -a

2voto

Ryan Spears Points 1524

Non, les alias sont de simples substitutions de texte. Utilisez plutôt des noms d'alias différents :

alias cona='ssh username@server1.domain.com' 
alias conb='ssh username@server2.domain.com'

EDIT si l'on doit absolument avoir des drapeaux, une fonction servira mieux qu'un alias -. voir la réponse de @glenn-jackmann .

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X