У моєму .profile(джерело в shрежимі емуляції з мого .zshrc) у мене є такий фрагмент:
if [ -f /usr/bin/pacmatic ]; then
alias pacman=pacmatic
fi
# Colorized Pacman output
alias pacman="pacman --color auto"
Однак другий псевдонім завжди перекриває перший:
% type pacman
pacman is an alias for pacman --color auto
Як я можу зробити так, щоб друге призначення псевдоніма "успадковувало" перше призначення, так що якщо воно /usr/bin/pacmaticіснує, псевдонім стає pacmatic --color auto?
Я не проти використання функцій замість псевдонімів, але я вважаю за краще, якщо логіка не виконується кожен раз, коли pacmanвикликається (я хочу pacmaticперевірити один раз, при запуску оболонки, не кожен раз, коли pacmanвона запускається). Я також віддаю перевагу shсценарію -portable, але якщо це неможливо, ви можете використовувати повний zshсинтаксис.
(Так, я знаю , що це може бути легко вирішена шляхом додавання --color autoдо pacmaticпсевдоніму. Але я хочу зробити це правильний шлях ™) .
Я спробував гуглінг і переглядав манпажі, але безрезультатно.
bash), і вони можуть легко дзвонити один одному.