Trong chế độ mô phỏng của tôi .profile
(có nguồn gốc sh
từ tôi .zshrc
), tôi có đoạn mã sau:
if [ -f /usr/bin/pacmatic ]; then
alias pacman=pacmatic
fi
# Colorized Pacman output
alias pacman="pacman --color auto"
Tuy nhiên, bí danh thứ hai luôn ghi đè lên đầu tiên:
% type pacman
pacman is an alias for pacman --color auto
Làm thế nào tôi có thể làm cho nó để gán bí danh thứ hai "kế thừa" nhiệm vụ đầu tiên, để nếu /usr/bin/pacmatic
tồn tại, bí danh trở thành pacmatic --color auto
?
Tôi không phản đối việc sử dụng các hàm thay vì bí danh, nhưng tôi thích nó hơn nếu logic không được thực hiện mỗi lần pacman
được gọi (tôi muốn pacmatic
kiểm tra một lần, khi khởi động shell, không phải mỗi lần pacman
chạy). Tôi cũng thích một sh
tập lệnh có thể di chuyển được, nhưng nếu điều này là không thể, bạn có thể sử dụng zsh
cú pháp đầy đủ .
(Vâng, tôi biết rằng điều này có thể dễ dàng được giải quyết bằng cách thêm --color auto
vào pacmatic
bí danh. Nhưng tôi muốn thực hiện đúng cách ™.)
Tôi đã thử Google và xem qua các trang, nhưng không có kết quả.
bash
) và họ có thể dễ dàng gọi cho nhau.