Hãy nghĩ về bí danh như biệt danh. Bạn có thể có một lệnh mà bạn thực hiện rất nhiều nhưng muốn rút ngắn.
Ví dụ, bạn thường muốn đi thẳng đến máy tính để bàn trong dòng lệnh, vì vậy bạn có thể làm điều này
alias desktop="cd ~/Desktop"
Từ đó bạn chỉ cần gõ
desktop
trong thiết bị đầu cuối và nó sẽ thực hiện cd ~/Desktopcho bạn.
Hàm chứa logic. Trong một chức năng, bạn có thể thực hiện cuộc gọi đến một số chương trình khác nhau. Đây là một chức năng echo đơn giản
function e {
echo $1
echo $1 $1
echo $1 $1 $1
}
Mặc dù nó có thể xuất hiện tương tự như bí danh khi bạn gọi nó
e Hello
E () của bạn có thể có rất nhiều điều khác nhau xảy ra. Trên đây là một ví dụ đơn giản.
Bí danh nên được dành riêng cho các trường hợp sử dụng đơn giản. Ví dụ cá nhân - Tôi đã thay thế rmlệnh của mình như thế này
alias rm='trash-put'
Bất cứ khi nào tôi làm một rm, nó sẽ gửi nó vào thùng rác thay vì xóa nó khỏi đĩa. Điều này phục vụ cho sự vụng về của tôi trong thiết bị đầu cuối nơi tôi có thể (đôi khi) vô tình xóa một tệp quan trọng.
Các chức năng , bạn cần nhớ, là những phần của logic. Bạn sẽ không sử dụng một chức năng độc lập, thường. Nó sẽ là một phần của một kịch bản lớn hơn. Hãy tưởng tượng một tập lệnh lấy tất cả các tệp của bạn và đổi tên chúng thành phiên bản tiếng Latin của chúng. Bỏ qua rằng có nhiều cách khác nhau để làm điều đó.
Nhưng những gì bạn có thể làm là lặp qua mọi tệp trong thư mục và truyền filepath cho hàm RenameAsPigLatin của bạn. Hàm RenameAsPigLatin có thể có thêm logic trong đó liên quan đến các số, trong đó bạn quyết định rằng các tệp kết thúc bằng số không nên được đổi tên.
Ngay lập tức bạn có thể thấy lợi ích của việc có nó như là một chức năng. Hàm có thể tập trung vào việc đổi tên theo các quy tắc lạ của bạn trong khi phần còn lại của tập lệnh có thể duyệt qua các thư mục khác nhau khi cần thiết.