2015-08-31 16 views
6

Tôi đang cố gắng viết một hàm đơn giản trong .zshrc của mình để ẩn tất cả các lỗi (chủ yếu là "Quyền bị từ chối") cho find.Truyền tất cả các đối số trong hàm zsh

Bây giờ, làm thế nào tôi có thể vượt qua tất cả các đối số được đưa ra bằng cách gọi hàm đến find?

function superfind() { 
    echo "Errors are suppressed!" 
    find $(some magic here) 2>/dev/null 
} 

Tôi có thể làm $1 $2 $3 $4 ... nhưng điều này thật ngu ngốc! Tôi chắc chắn có một cách thực sự đơn giản.

Trả lời

7

Sử dụng [email protected], nó mở rộng cho tất cả các đối số vị trí, ví dụ .:

superfind() { 
    echo "Errors are suppressed!" 
    find "[email protected]" 2> /dev/null 
} 
+0

giả như bạn muốn vượt qua tất cả nhưng đối số đầu tiên? –

+0

@rayandrews: thêm lệnh 'shift' trước lệnh' find'. – Thor

+0

Tôi có nghĩa là trong một tình huống như thế này: "echo" đầu tiên arg là: $ 1 và args còn lại là: $ 2 $ 3 $ 4 $ 5 ... "... bạn không thể thay đổi bên trong echo. Nhưng biết zsh, tôi sẽ đặt cược có một cách: –

Các vấn đề liên quan