Chcę utworzyć alias, dla cd -
którego powinna być tylko myślnik ( -
). Próbowałem bez powodzenia:
alias -='cd -' # bash: alias: -=: Invalid option
alias \-='cd -' # bash: alias: -=: Invalid option
alias '-'='cd -' # bash: alias: -=: Invalid option
alias '\-'='cd -' # bash: alias: `\-': Invalid alias name.
Poprzednie trzy są takie same (tylko inne dane wejściowe, ale bash zamienia je wszystkie w to samo polecenie alias
za pomocą jednego argumentu -=cd -
), więc nic dziwnego, że komunikat o błędzie jest taki sam. Domyślam się, że jeśli argument zaczyna się od myślnika, jest on analizowany jako flaga, a nie nazwa aliasu.
Czy można w ogóle użyć -
nazwy aliasu?
cd -
Odpowiedzi:
W przypadku większości poleceń można przekazać
--
jako argument, a wszystkie kolejne argumenty są traktowane jako operandy, a nie opcje, nawet jeśli zaczynają się od myślnika.alias
Wbudowane w bash rozpoznaje--
.źródło