Tôi đã tìm kiếm ở khắp mọi nơi và tôi đã tin rằng không có cách nào để làm điều đó ngoài việc có các biến toàn cầu nhưng tôi tin rằng guru's trong stackoverflow.com có thể giúp tôi:Chức năng bẫy bằng cách truyền các đối số?
Có bất kỳ cách nào trong bash để bẫy một chức năng bằng cách chuyển các đối số cho nó?
Ví dụ: trap <function_name> <arg_1> <arg_2> SIGINT
?
Yeap! Thanks:] – Kounavi
Trên thực tế nó không hoạt động kể từ khi gọi bẫy "myfunction $ arg_1 $ arg_2" SIGINT SIGTERM có nghĩa là khi Ctrl-C được nhấn giá trị cũ của $ arg_1 $ arg_2 trong đó bảo quản và không phải là bản cập nhật. Đoán tôi sẽ sử dụng một chức năng wrapper hoặc làm cho các đối số toàn cầu kể từ khi tôi không thể làm cho công việc theo cách tôi dự định:/P.S .: Có vấn đề mà tôi sử dụng double_quotes và không duy nhất như trong ví dụ của bạn? – Kounavi
@Kounavi: Như bạn đã đoán - bạn cần sử dụng dấu nháy đơn, chứ không phải dấu ngoặc kép. – ruakh