Trong chế độ mô phỏng của tôi .profile(có nguồn gốc shtừ 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/pacmatictồ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 pacmatickiểm tra một lần, khi khởi động shell, không phải mỗi lần pacmanchạy). Tôi cũng thích một shtậ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 zshcú 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 autovào pacmaticbí 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.