-print
là hành động mặc định . Một số find
vị từ được coi là hành động trái ngược với bộ lọc hoặc điều kiện . Chẳng hạn, -type f
không phải là một hành động. -exec
là một hành động mặc dù nó cũng có thể được sử dụng như một điều kiện.
Các hành động bao gồm -print
, -exec
và -ok
. Một số find
triển khai có vị từ hành động phi tiêu chuẩn khác như -print0
, -printf
, -execdir
, -okdir
, -ls
...
find files <some-predicates>
Trường hợp không <some-predicates>
có hành động nào tương đương với:
find files \( <some-predicates> \) -print
(lưu ý các dấu ngoặc đơn ở trên rất quan trọng nếu có một số -o
toán tử).
Khi nghi ngờ, tốt nhất là sử dụng -print
rõ ràng (hoặc -exec printf '%s\0' {} +
(hoặc -print0
nếu có) để đầu ra có thể được xử lý sau).
-print
Hành động mặc định được chỉ định bởi POSIX. Một số find
triển khai cũ đòi hỏi một sự rõ ràng-print
, nhưng những thứ đó thường không được tìm thấy trong tự nhiên ngày nay.
Cũng lưu ý rằng một số find
triển khai cho phép bỏ qua files
, trong trường hợp đó, chúng mặc định tìm kiếm vào thư mục hiện tại. Đó là, đối với họ,
find
tương đương với
find .
find . -print
Tuy nhiên, đó không phải là tiêu chuẩn, vì vậy tốt nhất nên tránh.
Ở phần cuối dài hơn (và hữu ích) của phổ, một số find
triển khai cũng cho phép chuyển các đường dẫn tệp làm đối số cho một -f
tùy chọn như trong:
find -f "$file1" -f "$file2" -print
Chúng là các find
triển khai duy nhất cho phép chuyển các đường dẫn tệp tùy ý tới find
. Các triển khai khác không thể chấp nhận các đường dẫn tệp như !
hoặc -print
... vì vậy find "$file" -print
(hoặc thậm chí find -- "$file" -print
) giả định $file
không phải là tên của một find
vị từ (hoặc tùy chọn trong trường hợp đầu tiên).
Thật không may, đó cũng không phải là tiêu chuẩn hay di động.